Excel函数2种方法计算多条件不相邻列数据之和

有数据如下图左侧,求不同业务员3月份的产品A、C、D销售额之和

题目

可能第一反应是,将横向的产品数据转置为纵向的,比如用PQ的逆透视功能,今天我们不用这些,来讲讲2种用公式实现的求和办法

方法一:SUM+SUMIFS+INDIRECT

这个方法的实现主要依靠INDIRECT的引用功能

公式=SUM(SUMIFS(INDIRECT({"$i$2:$i$13","$k$2:$k$13","$l$2:$l$13"}),$G$2:$G$13,N3,$H$2:$H$13,"3月"))

将求和的三列数据提取出来作为一个区域=INDIRECT({"$i$2:$i$13","$k$2:$k$13","$l$2:$l$13"})

条件求和=SUMIFS(上一步得到的结果,$G$2:$G$13,N3,$H$2:$H$13,"3月")

符合条件的数据

此时得到的是符合条件的三个数,所以还需要将它们求和,外层嵌套一个SUM函数


方法二:SUM+FILTER+SWITCH/HSTACK

如果方法一不太熟悉,那么方法二看过我之前文章的朋友就不陌生了,主要就是利用SWITCH/HSTACK将求和区域合并为一个区域,然后用FILTER或者SUMIFS条件得到结果都可以,之后用SUM将得到的结果求和

这里用FILTER的时候,所用的公式

SUM+FILTER+SWITCH=SUM(FILTER(SWITCH({1,2,3},1,$I$2:$I$13,2,$K$2:$K$13,3,$L$2:$L$13),($G$2:$G$13=N3)*($H$2:$H$13="3月")))

将产品A/C/D数据列合并为一个数据区域=SWITCH({1,2,3},1,$I$2:$I$13,2,$K$2:$K$13,3,$L$2:$L$13)

同时满足业务员姓名和3月的条件=($G$2:$G$13=N3)*($H$2:$H$13="3月")


SUM+FILTER+HSTACK=SUM(FILTER(HSTACK($I$2:$I$13,$K$2:$L$13),($G$2:$G$13=N3)*($H$2:$H$13="3月")))

将产品A/C/D数据列合并为一个数据区域=HSTACK($I$2:$I$13,$K$2:$L$13)


所以遇到不连续的列求和,第一反应是将它们变成连续的列,之后求和

完结

完结,撒花✿✿ヽ(°▽°)ノ✿

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容