在单个条件下使用零和非零值的Excel SUMIFS
我试图找出一个多标准范围可能包含也可能不包含零的SUMIFS公式。 以下面的表格为例。
|Title |Age|Color |---------|---|------ |Odyssey |5 |Brown |Tempest |2 |Yellow |Iliad |3 | |Macbeth |9 |Brown
我的目标是获得一个SUMIFS,其中颜色是“棕色”或空白。 我试过的是
=SUMIFS(B2:B5,C2:C5,{"Brown",""})
但是,这会返回一个值“14”,它只是布朗值的总和,并不会将空白颜色行中的“3”相加。 如果我切换并使用
=SUMIFS(B2:B5,C2:C5,{"","Brown"})
它返回“3”,这只是空白值,而不是布朗。 它似乎只考虑数组中的第一个值。
我究竟做错了什么? 如果数组的值可以是NULL或指定的值,那么获取数组的正确公式是什么?
PS我也试过ISBLANK
, ISNULL
, NULL
等
你可以把它包装在一个副产品中,这样就可以得到总和
=SUMPRODUCT(SUMIFS(B2:B5,C2:C5,{"Brown",""}))
否则它不会将花括号中的值识别为一个数组,只是先看看你先放哪个。
找出我在做什么错了:
需要将整个公式封装在SUM()函数中。
=SUM(SUMIFS(B2:B5,C2:C5,{"Brown",""}))
你也可以通过总结两个常规的SUMIF
函数来完成:
=SUMIF(C2:C5,"Brown",B2:B5)+SUMIF(C2:C5,"",B2:B5)
。 这产生(5 + 9)+(3)= 17。
据称大型数据集比SUMPRODUCT
更快 。
ABC 1|Title |Age|Color |---------|---|------ 2|Odyssey |5 |Brown 3|Tempest |2 |Yellow 4|Iliad |3 | 5|Macbeth |9 |Brown