【发布时间】:2020-10-09 16:38:45
【问题描述】:
我已经根据单元格中值的变化在VBA中编写了一些SUMIFS
例如单元格 A23 是带有 Total 和 UK 的下拉菜单
If A23 = "Total" Then
Result.Range("A24").Value = WorkSheetFunction.Sumifs(Range(B:B)),
Range(C:C)), "Year",
Range(D:D)), "Group")
If A23 = "UK" Then
Result.Range("A24").Value = WorkSheetFunction.Sumifs(Range(B:B)),
Range(C:C)), "Year",
Range(D:D)), "Group",
Range(E:E)), "UK")
根据上面的示例,第二个代码是第一个代码的重复,但包含一个额外的范围以选择“UK”
有没有一种方法可以缩短代码,以便我可以简单地连接我想要包含的任何其他范围,而不是不断地重写它?
所以理想情况下我可以有类似的东西:
Test = Result.Range("A24").Value = WorkSheetFunction.Sumifs(Range(B:B)),
Range(C:C)), "Year",
Range(D:D)), "Group"
If A23 = Total Then
A24 = Test)
If A23 = UK Then
A24 = Test &, Range(E:E), "UK")
这可能吗?如果可以,我该怎么做?
【问题讨论】:
标签: vba function concatenation repeat sumifs