Vba 如何将OR运算符与SumIfs()一起使用
如果三个标准(=或)中有一个匹配,如何使用SumIfs求和 我如何使用或作为标准?这是伪代码Vba 如何将OR运算符与SumIfs()一起使用,vba,excel,Vba,Excel,如果三个标准(=或)中有一个匹配,如何使用SumIfs求和 我如何使用或作为标准?这是伪代码 Sub SumDemo() Dim Sum Sum = Application.WorksheetFunction.SumIfs([REVENUE], [UNIT], "=avengers", [region], "=north OR =south OR = west") MsgBox Sum End Sub 与复制的方法稍有不同,请使用“评估”来评估工作表公式 Dim
Sub SumDemo()
Dim Sum
Sum = Application.WorksheetFunction.SumIfs([REVENUE], [UNIT], "=avengers", [region], "=north OR =south OR = west")
MsgBox Sum
End Sub
与复制的方法稍有不同,请使用“评估”来评估工作表公式
Dim Sm As Long
Sm = ActiveSheet.Evaluate("Sum(SumIfs(REVENUE, UNIT, ""avengers"", region, {""north"", ""south"", ""west""}))")
MsgBox Sm
尝试谷歌搜索“VBA excel sumifs Or”,您将发现结果#1:
这应该是一个评论。没有确切的答案。您可能会因此而获得选票。:)@cyboashu我知道我可能(哦),但它确实回答了这个问题。是的。。。同意。@cyboashu我总是忘记必须使用后期绑定才能完成此任务。@Sercho如果您认为duplicate回答了这个问题是正确的,请在本例中提供如何使用它。只有链接的答案,特别是那些指向重复的答案,通常会被否决。如果您保留链接并展示如何在这个特定实例中使用它,那么它将成为一个答案,即任何人都不应否决投票。为什么双击“”//以前从未见过这个?!因为它位于第一个和最后一个
“
。它需要加倍才能真正保留一个。如果不是vba认为字符串结束了。在没有ActiveSheet的情况下,我如何实际使用该答案。评估?!MsgBox显示公式。不是总和。您必须在我的答案中使用evaluate,否则您需要在副本中使用该方法。是否也可以在UDF中使用SumIfs和Range,而不将Range作为函数参数传递?–费边2分钟前编辑
Dim Sum as Double
Dim Revenue As Range, Unit As Range, Region As Range
'You will need to define your ranges.
Set Revenue = Range("")
Set Unit ...
Set Region ...
Sum = Application.Sum(Application.SumIfs(Revenue, Regions, Unit, "Avengers", Array("North", "south","west")))