在单个条件下使用零和非零值的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我也试过ISBLANKISNULLNULL

你可以把它包装在一个副产品中,这样就可以得到总和

 =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