Excel中Sumproduct函数的使用方法
1.Sumproduct函数的适用范围,在给定的几组数组中,然后把数组间对应的元素相乘,最后返回乘积之和。
从字面上可以看出,sumproduct有两个英文单词组成,sum是和,product是积,所以是乘积之和的意思。
2.sumproduct函数的语法格式
=SUMPRODUCT(array1,array2,array3, ...)Array为数组。
3.当sumproduct函数中的参数只有一个数组时,即对数组{1;2;3;4;5;6;7}进行求和,1+2+3+4+5+6+7=28。
4.当sumproduct函数中参数为两个数组时,两个数组的所有元素对应相乘。
公式=sumproduct(A2:A8,B2:B8)可转化为
=sumproduct(数组1,数组2)
=sumproduct({1;2;3;4;5;6;7},{1;2;3;4;5;6;7})=1*1+2*2+3*3+4*4+5*5+6*6+7*7=140。
5.当sumproduct函数中参数为三个数组时,三个数组的所有元素对应相乘。
6.单条件求和——统计成都发货平台的发货量。
=sumproduct((A2:A13='成都发货平台')*(B2:B13))
看到这公式你可能有疑惑,它跟语法格式好像不一样,其实把它看做是只有一个参数。因为当函数中出现由TRUE和FALSE组成的逻辑数组时,这时公式要写成这种格式
=sumproduct((A2:A13='成都发货平台')*1,(B2:B13)),乘以1,把它转化成数组才能参与运算。否则就写成最上面的那种形式。
公式分解
=sumproduct({数组1}*{数组2})
=sumproduct({TRUE;…..TRUE;…..TRUE}*{11012;…41568;…12506})
=1*11012+1*41568+1*12506=65086。
有关sumif函数的用法,可以观看小编的经验Excel中Sumif函数的使用方法。
7.多条件求和——求当发货平台为成都,收货平台为重庆的发货量。
=SUMPRODUCT((A2:A13='成都发货平台')*(C2:C13='重庆发货平台')*(D2:D13))
有关sumifs函数的用法,可以观看小编的经验Excel中Sumifs函数的使用方法。
8.多条件求和——求成都发货平台和重庆发货平台的发货量,只要满足其中的一个条件
输入公式=SUMPRODUCT(((A2:A13='成都发货平台')+(A2:A13='重庆发货平台')),(B2:B13))
注意:SUMPRODUCT(条件1*条件2*条件3...条件N)中 * :满足所有条件;SUMPRODUCT(条件1+条件2+条件3...+条件N)中 + :满足任一条件。
9.如图,输入公式=SUMPRODUCT((A2:A13='成都发货平台')*(C2:C13='重庆发货平台'))。利用sumproduct函数中TRUE和FALSE逻辑数组1和0的特效来计数。
公式解析=sumproduct({1;0;0;0;0;0;0;0;0;1;0;1}*{1;0;0;0;0;0;1;0;0;1;0;0})=2
10.输入公式=SUMPRODUCT((D2<$D$2:$D$8)*1)+1
数组公式D2<$D$2:$D$8这里是由TRUE和FALSE组成的逻辑数组{FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;TRUE}转化为1和0的数组{0;1;1;0;1;0;1}。
这里利用的是该成绩和所以成绩进行比较,通过测算高于该成绩的成绩,每次累加1。
11.sumproduct函数后面的参数必须是数组,即行和列的维度是一致的。参数维数不一致所以返回错误值#VALUE!
12.sumproduct函数,逗号分割的各个参数必须为数字型数据。
如果是判断的结果逻辑值,就要乘1转换为数字。
如果不用逗号,直接用*号连接,就相当于乘法运算,就不必添加*1。