在excel2003版中,当Countif和sumif无力进行多条件求和与计数时,Sumproduct函数挑起了这个重任。
而07版开始,新增的countifs和sumifs函数取代了Sumproduct函数,成为多条件计算与求和的首选。于是很多同学认为,用Sumproduct函数运算太慢了,应该不需要它了吧!而兰色要说,你太小看它了。虽然一般的多条件求和不必用它,但“二般”情况下,我们还真离不开它。
1、多列“联合判断”
sumifs和countifs只能就指定列设置条件,而sumproduct可以多列联合起来判断。
【例1】如下图所示,要求统计”库存数小于标准库存“的产品个数。
公式:D10
=SUMPRODUCT((B2:B7<C2:C7)*1)
由于sumproduct是少数几个直接支持数组运算的函数之一,所以遇到数组运算求和时还少不了它。
【例2】如下图所示,要求统计A列有多少个商品。重复的不统计。
公式:C9
=SUMPRODUCT(1/COUNTIF(A2:A7,A2:A7))
3、隔列求和
最经典的隔行或隔列求和公式是sumproduct函数实现的
【例3】如下图所示,要求对表格进行隔列求和。
公式:H1
=SUMPRODUCT((MOD(COLUMN(A1:G1)+2,3)=0)*A1:G1)
4、对内存或常量数组的条件求和
由于sumifs和countifs的只能对单元格区域的值判断,所以对常量数组或内存数组只能用sumroduct了。如:
=SUMPRODUCT(({12,3,8,2,20}>10)*1)
兰色说:当然在工作中能用sumifs或countifs函数的公式,就不建议用sumproduct函数,必竟sumrproduct函数执行的数组运算,效率远低于前者。
联系客服