Excel 使用范围名称添加
Excel Adding Using a Range of Rangenames
所以如果我有一系列范围名称。
MasterRange 参考 B2:B4
那么在B2 CRange中那么CRange引用C2的值为1
那么在B3 DRange中那么DRange引用D2就是值2
然后在 B4 ERange 中 ERange 引用 E2 是值 3
有没有办法使用一个范围来引用其他范围以便对它们进行广告?
如果我 =SUM(INDIRECT(MasterRange)) 只说 1。它似乎没有添加 DRange & ERange
试试下面这个功能。它未经测试,但应该会给您一个良好的开端。
Function SumRangeOfRangeNames(SourceRange as Range, SheetName as String) as Double
Dim celRange as Range
For each celRange in SourceRange
Dim Total as Double
Total = Total + Worksheets(SheetName).Range(SheetName).Value
Next
SumRangeOfRangeNames = Total
End Function
从vba
这样调用
Sub Test()
Dim mySum as Double
mySum = SumRangeOfRangeNames(Worksheets(Sheet1").Range("MasterRange"),"Sheet1")
debug.print mySum
End Test
或者通过单元格这种方式
=SumRangeOfRangeNames(MasterRange,"Sheet1")
所以如果我有一系列范围名称。
MasterRange 参考 B2:B4
那么在B2 CRange中那么CRange引用C2的值为1 那么在B3 DRange中那么DRange引用D2就是值2 然后在 B4 ERange 中 ERange 引用 E2 是值 3
有没有办法使用一个范围来引用其他范围以便对它们进行广告?
如果我 =SUM(INDIRECT(MasterRange)) 只说 1。它似乎没有添加 DRange & ERange
试试下面这个功能。它未经测试,但应该会给您一个良好的开端。
Function SumRangeOfRangeNames(SourceRange as Range, SheetName as String) as Double
Dim celRange as Range
For each celRange in SourceRange
Dim Total as Double
Total = Total + Worksheets(SheetName).Range(SheetName).Value
Next
SumRangeOfRangeNames = Total
End Function
从vba
这样调用Sub Test()
Dim mySum as Double
mySum = SumRangeOfRangeNames(Worksheets(Sheet1").Range("MasterRange"),"Sheet1")
debug.print mySum
End Test
或者通过单元格这种方式
=SumRangeOfRangeNames(MasterRange,"Sheet1")