VBA EXCEL:如何将所有计数值相加?

时间:2016-12-30 03:46:37

标签: excel vba excel-vba

 arr1 = Array("chocolate","icecream","sweet")

For Each elem In arr1 '<--| loop through 1st array list
                fooditem = fooditem + WorksheetFunction.CountIfs(.Columns(1), "sugar", .Columns(20), "yes", .Columns(31), elem)
            Next elem

此处,输出仅显示等于巧克力或冰淇淋或甜味的结果。但我想添加总计数。 即总数应等于冰淇淋+巧克力+甜味。 例如在excel中它是= sum(countif(........))

如何在vba中写这个?

任何帮助都非常感谢。 非常感谢你。

1 个答案:

答案 0 :(得分:0)

您可以使用Application.SumIf函数,如下所示:

Application.SumIf(Range("B2:B4"), Array("chocolate", "icecream", "sweet"), Range("C2:C4"))

但是,第一个和最后一个参数必须是范围对象。第一个是您正在搜索的范围,最后一个是相应总和的范围。在这种情况下,相应的总和都等于1的事实并不重要 - 它仍然必须是一个范围对象(因此必须在工作表的某处写入1)。

这接近你想要的吗?感谢