条件求和:sumif函数的数组用法

之前分享过sumif函数的基本用法,今天分享它的数组用法。

-01-特定应用

1.求竹叶饺子和豆沙饺子的总数。现在是找出两种粽子的总数,你可能会想到太岁& # 8221;竹叶& # 8221;总数,然后把& # 8221;豆包& # 8221;找出总量,最后把它们加起来。这是可能的,公式为=SUMIF(A2:A9,& # 8221;竹叶& # 8221;,B2:B9)+SUMIF(A2:A9,& # 8221;豆包& # 8221;,B2:B9),要用两次sumif,公式有点长。

条件求和:sumif函数的数组用法

其实有两个条件,一是& # 8221;竹叶& # 8221;,一个是& # 8221;豆包& # 8221;。可以用公式=SUM(SUMIF(A2:A9,{ & # 8220;竹叶& # 8221;,”豆包& # 8221;},B2:B9).

条件求和:sumif函数的数组用法

第二个参数是一个数组,sumif也返回一个数组。您可以在公式编辑栏中选择sumif函数,然后按F9查看它。结果是{42,42}。这里的两个值正好相同,第一个42是& # 8221;竹叶& # 8221;总数中,第二个42是& # 8221;豆包& # 8221;总量可以和上图左表对比。最后用sum函数将两个值相加,这就是array的用法。

条件求和:sumif函数的数组用法

也可以用前面学过的+来完成,虽然是针对& # 8221;竹叶& # 8221;还有& # 8221;豆包& # 8221;总量实际上是一个多条件或关系。公式为= sum((a2:a9 = & # 8221;竹叶& # 8221;)+(A2:A9 = & # 8221;豆包& # 8221;))*B2:B9),按ctrl+shift+enter。

条件求和:sumif函数的数组用法

2.求小于20和大于40的数量之和。这里也有两个条件,一个小于20,一个大于40,也是or的关系。可以像以前一样加2个sumif。现在使用数组公式=SUM(SUMIF(B12:B19,{ & # 8220;& lt20″,”& gt40″}))。同样,sumif返回数组{17,98},其中17是小于20的总量,98是大于40的总量。

条件求和:sumif函数的数组用法

用+来完成,公式为= sum((B12:B19 < 20)+(B12:B19 & gt;40))*B12:B19),按ctrl+shift+enter。

3.求20-40之间的量之和。也就是求大于等于20小于等于40的量之和。还有两个条件,一个大于等于20,一个小于等于40,这是和的关系。现在怎么求?如果公式=SUM(SUMIF(B22:B29,{ & # 8220;& gt=20″,”& lt=40”})),结果肯定是错的。再看公式中的sumif,返回的结果是{270,104},270是大于等于20的总量,其中包括大于40的。

条件求和:sumif函数的数组用法

正确的公式是=SUMIF(B22:B29,& # 8221;& gt=20″)-SUMIF(B22:B29,& # 8221;& gt40″),从大于等于20的总量中减去大于40的总量就是大于等于20小于等于40的总量。

数组的公式为=SUM(SUMIF(B22:B29,{ & # 8220;& gt=20″,”& gt40″})*{1,-1}),sumif返回1数组{270,185},270是大于等于20的总量,185是大于40的总量。270怎么减去185?所以乘以{1,-1}这样结果就是{270,-185},总和实际上是270-185。

由于多个条件与的关系,也可以用*来完成,公式为= sum((B22:B29 >:= 20)*(B22:B29 & lt;=40)*B22:B29),按ctrl+shift+enter。