用SUMPRODUCT函数,求和、计数都OK
SUMPRODUCT,这个函数从字面来领略,SUM是求和,PRODUCT是乘积。综合到一起,就是对各个数组参数计较乘积,并返回乘积之和。
啥是数组?咱们就简朴的把它领略成一组数好了,没啥高科技含量。
接下来,咱们就一起看看这个函数有哪些典范的用法。
如下图所示,C列是商品单价,D列是商品数量,要计较所有商品的总价,可以利用下面这个公式:
=SUMPRODUCT(C2:C12,D2:D12)
公式把每一行中的单价与数量对应相乘,然后再求和。
计较进程相当于C2*D2+C3*D3+C4*D4……
本例中,也可以将中间的逗号换成乘号:
=SUMPRODUCT(C2:C12*D2:D12)
那这个乘号和逗号啥区别呢?
当求和区域中有文本的时候,在两个数组之间利用逗号,会把文本当成0来处理惩罚。要是利用乘号的话,假如求和区域中有文本,就返回错误值了。
可是利用逗号也是有前提条件的,那就是两个数组的行、列数必需一样,不然会返回错误值。
如下图所示,要计较部分为“大食堂”的所有商品总价,可以利用以下公式:
=SUMPRODUCT((A2:A12="大食堂")*C2:C12*D2:D12)
这个公式中,先利用(A2:A12=”大食堂”),判定A列的部分是不是便是指定的部分,获得一组由TRUE和FALSE组成的逻辑值。
可是逻辑值不能直接作为数组参数,可是可以介入四则运算,所以咱们用乘号,别离乘以C列的单价和D列的数量。假如(A2:A12=”大食堂”)这部门的功效里是逻辑值TRUE,就相当于1,而逻辑值FALSE的浸染就相当于是0。换句话说,切合指定部分的,就用1*单价*数量,不切合指定部分的就用0*单价*数量,最后再将各个乘积举办求和。
如下图,要按照A列的日期,计较2月份的总金额。
公式为:
=SUMPRODUCT((MONTH(A2:A12)=2)*1,D2:D12,E2:E12)
MONTH(A2:A12)=2部门,抖客教程网,先利用MONTH函数计较出A列日期的月份,然后用等式,判定是不是便是2,这部门获得的,也是一组由TRUE和FALSE组成的逻辑值。
接下来把逻辑值乘以1,TRUE*1功效为1,FALSE*1功效为0,最终酿成由数值1和0组成的新数组。再用这个新数组作为参数1,别离与第二参数D2:D12和第三参数E2:E12相乘,最后计较出乘积之和。
也可以直接把各个参数之间的逗号写成乘号;
=SUMPRODUCT((MONTH(A2:A12)=2)*D2:D12*E2:E12)
4、计较指定月份、指定部分的总金额如下图,要计较2月份大食堂的总金额。
公式为:
=SUMPRODUCT((MONTH(A2:A12)=2)*(B2:B12="大食堂"),D2:D12,E2:E12)
公式看起来很长,可是和第三个例子是一样的,就是多了一个部分的判定条件(B2:B12=”大食堂”)。
5、按照两个条件计较采购量如下图,要按照B1:E1单位格中的日期和A2:A12单位格中的品名,来计较对应的采购量。
公式为:
=SUMPRODUCT((B1:E1=1*"2021-2-2")*(A2:A12="黄瓜")*B2:E12)
这个数据表格和前面几个表格的布局纷歧样了,两个条件别离在行偏向和列偏向,对付这种布局的表格,计较时有一个小套路,就是别离比拟程度和垂直偏向的两个条件,然后乘以数值区域。
这个数值区域的行数,要与垂直偏向条件区域的行数一样,而且列数要与程度偏向条件区域的列数一样。
上面这句话大概不太好领略,其实团结到数据中,就可以看出来了:
数值区域是B2:E12,这里的行数是2~12行,和(A2:A12=”黄瓜”)的行数是一样的。而列数是B:E,和(B1:E1=1*”2021-2-2″)的列数是一样的。
别的,在公式中直接写日期的时候,还要留意,先加上一对半角引号,然后再乘以1酿成日期序列值,不然Excel会把2021-2-2当成减法了。
如下图所示,要计较2月份白菜和土豆的总采购量。公式为:
=SUMPRODUCT((MONTH(B1:E1)=2)*((A2:A12="白菜")+(A2:A12="土豆"))*B2:E12)