分享

32Excel函数有哪些常用的多条件求和经典套路?

 asaser 2022-05-13
今天给大家分享一下Excel函数中有哪些常用的多条件求和套路。

我举个案例。

如下图所示,A:D是数据源,A列是单位,B列是年龄,D列是工资。需要在G4:G7区域,统计符合两个条件,也就是F3:F7指定的单位和G1单元格指定的年龄的工资合计值。

图片

……话说前段时间给大家分享了Excel有哪些可以进行单条件求和的函数,不知道大家是否还记得:

除了SUMIF之外,还有哪些函数可以执行条件求和?

多条件求和与单条件求和本质上并没有什么不同,不就是多了个条件嘛。10W块是嫁妆,20W块就不是嫁妆了?从某种角度看,那必须都得是嫁妆,未来泉州老丈人,你说是不是?

图片

在单条件求和的教程里,我们分享了以下几种函数的解法。

SUM/SUMIFS/SUMPRODUCT/MMULT和FILTER等

这些函数也都可以用于多条件求和

解法1:SUMIFS函数 ▼

=SUMIFS(D:D,A:A,F4,B:B,$G$1)

D:D是求和区域;A:A是第1个条件区间,条件值是F4;B:B是第2个条件区间,条件值是$G$1。由于年龄的条件是固定的,所以$G$1需要绝对引用。

解法2:SUM函数 ▼

=SUM(($A$2:$A$19=F4)*($B$2:$B$19=$G$1)*$D$2:$D$19)

这是一条数组公式,如果你的Excel版本不是365,需要按数组三键<Ctrl+Shift+Enter>结束公式输入。

如果你不想按数组三键,想让公式自动执行数组运算,可以换用SUMPRODUCT函数。

解法3:SUMPRODUCT函数 ▼

=SUMPRODUCT(($A$2:$A$19=F4)*($B$2:$B$19=$G$1)*$D$2:$D$19)

又或者将求和区域单独拆为参数:

解法4:SUMPRODUCT函数 ▼

=SUMPRODUCT(($A$2:$A$19=F4)*($B$2:$B$19=$G$1),$D$2:$D$19)

关于解法2、3、4三则之间的计算过程和异同,可以参考教程:

听说有人靠这一个函数打下了Excel半壁江山?

……

再给大家贴两个不常用的解法套路。

一个是365版本的FILTER函数:

解法5:FILTER函数 ▼

=SUM(FILTER($D$2:$D$19,$A$2:$A$19&$B$2:$B$19=F4&$G$1,0))

$A$2:$A$19&$B$2:$B$19部分,将单位和年龄两列数据合并为一列。F4&$G$1部分,把条件单位和年龄合并为一个文本值,然后判断两者是否相等。如果相等,则筛选D列的数据。

FILTER第3参数为0,表示如果一条符合条件的结果都没找到,就返回0.

最后使用SUM函数求和。

关于该函数的完整教程可以参考▼

它才是365新函数系列的核心,而不是XLOOKUP……

……

另外一个是函数中的高冷大师MMULT:

解法6:MMULT函数 ▼

=MMULT((TRANSPOSE(A2:A19&B2:B19)=F4:F7&G1)*1,D2:D19)

A2:A19&B2:B19,将单位和年龄两列数据合并为一列,然后用TRANSPOSE转换为一行。F4:F7&G1,将所需要查询的单位和年龄合并为一列。行列相乘,按照数组运算规则,返回一个由逻辑值构成的二维数组区间。再借助MMULT函数的特性,和D2:D19矩阵预算,压缩为一列结果。

……



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多