Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 如何将OR运算符与SumIfs()一起使用_Vba_Excel - Fatal编程技术网

Vba 如何将OR运算符与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

如果三个标准(=或)中有一个匹配,如何使用SumIfs求和

我如何使用或作为标准?这是伪代码

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")))