Excel SUMIFS对具有零和非零值的单个条件

时间:2017-03-29 12:27:03

标签: excel excel-formula

我试图找出SUMIFS的公式,其中多标准范围可能包含也可能不包含零。以下表为例。

|Title    |Age|Color
|---------|---|------
|Odyssey  |5  |Brown
|Tempest  |2  |Yellow
|Iliad    |3  |
|Macbeth  |9  |Brown

我的目标是获得一个SUMIFS,其中Color是' Brown'或空白。我尝试过的是

=SUMIFS(B2:B5,C2:C5,{"Brown",""})

然而,这会返回值' 14'这只是布朗值的总和,并不总和' 3'从空白颜色行。如果我将其切换并使用

=SUMIFS(B2:B5,C2:C5,{"","Brown"})

它返回' 3'这只是空白值,而不是布朗。它似乎只考虑数组中的第一个值。

我做错了什么?什么是获取值可以为NULL或指定值的数组的正确公式?

PS我还试过ISBLANKISNULLNULL等。

3 个答案:

答案 0 :(得分:2)

你可以把它包装在一个sumproduct中,所以它给出了总和的总和

=SUMPRODUCT(SUMIFS(B2:B5,C2:C5,{"Brown",""}))

否则它不会将大括号中的值识别为数组,只是查看你先放入的那个。

答案 1 :(得分:2)

弄清楚我做错了什么:

需要将整个公式封装在SUM()函数中。

=SUM(SUMIFS(B2:B5,C2:C5,{"Brown",""}))

答案 2 :(得分:1)

你也可以通过总结两个常规SUMIF函数来实现这一点:
=SUMIF(C2:C5,"Brown",B2:B5)+SUMIF(C2:C5,"",B2:B5)。这产生(5 + 9)+(3)= 17。

对于大型数据集,这是allegedly faster而不是SUMPRODUCT

   A        B    C
1|Title    |Age|Color
 |---------|---|------
2|Odyssey  |5  |Brown
3|Tempest  |2  |Yellow
4|Iliad    |3  |
5|Macbeth  |9  |Brown