SUMIF函数通过跟VLOOKUP函数过招后,优势尽显。可惜,强中自有强中手,遇上求和之王SUMPRODUCT函数,SUMIF函数也只能甘拜下风。
下面,卢子通过4个案例进行说明。
1.统计每个培训班总的报名人数。
试着用SUMIF函数统计,不过结果是错误的,只是统计了第1期的报名人数而已。
=SUMIF($A$2:$A$5,G2,$B$2:$E$5)
而用SUMPRODUCT函数却可以轻易解决这个问题。
=SUMPRODUCT(($A$2:$A$5=G2)*$B$2:$E$5)
SUMPRODUCT函数跟SUM函数的数组公式条件求和语法一样。
=SUMPRODUCT((条件区域=条件)*求和区域)
2.统计12个月的总销售毛利。
SUMIF函数无能为力。
虽然有姓名处有合并单元格,不过不影响SUMPRODUCT函数统计。
=SUMPRODUCT((B2:B16="销售毛利")*C2:N16)
3.统计每个月的金额。
这里尝试了用SUMIF函数,一回车,就弹出此公式有问题的警告对话框。SUMIF函数不管是求和区域或者条件区域,都不允许用其他函数。
=SUMIF(MONTH($A$2:$A$60),D2,$B$2:$B$60)
而用SUMPRODUCT函数依然可以轻易解决这个问题。
=SUMPRODUCT((MONTH($A$2:$A$60)=D3)*$B$2:$B$60)
可能读者看到这里会说:“卢子怎么每次都用这种简单的案例,一看就会,来点高难度的挑战一下。”
卢子这种最好说话,要简单的就来简单的,要难的就来难的,转变只需一瞬间。
4.在筛选状态下,统计每个培训班的人数。
默认情况下,不管是SUMIF函数还是SUMPRODUCT函数,都是无法直接实现的。
而SUMPRODUCT函数因为可以结合其他函数,虽然难度很大,但依然可以解决问题。
=SUMPRODUCT(($A$2:$A$10=A14)*SUBTOTAL(103,OFFSET($A$1,ROW($1:$9),0))*$C$2:$C$10)
OFFSET函数就是依次获取每一行的数据,SUBTOTAL函数就是判断每一行是不是隐藏了,如果没有隐藏就显示1,否则显示0。
公式的魅力,在于函数之间的嵌套组合,从而产生无穷变化,将不可能变成可能。
推荐:VLOOKUP函数之魅
注:文章版权归原作者所有,内容仅供读者学习、交流之目的,如有侵权,请联系我们删除。
联系邮箱:zirongzhang@ningmengyun.com