vba 在单列中对多个条件求和

vba sumifs multiple criteria in single column

假设我在 A 列和 B 列中有这个:

A    5
A_1  3
A_2  2
A_3  3
A_4  4

我想做:

Application.SumIfs(range("b:b"), range("b:b"), {"A", "A_2"})

但是这不起作用,数组值。

我不希望通过 EVALUATION()(或 [] 等价物)或者甚至不通过范围进行循环。 所以我正在寻找一种对标准值使用多个选项的方法。

PS:SumIfs只是一个例子,因为我的条件不止一个,所以如果有人建议SumIf,那不,我有理由不使用SumIf

谢谢

  1. SUMIFS 必须是后期绑定的:Application.SumIfs 对比 Application.WorksheetFunction.SumIfs
  2. 包裹在Application.SumProduct
  3. 使用Array()

Application.SumProduct(Application.SumIfs(range("b:b"), range("a:a"), Array("A", "A_2")))