Excel公式扫盲——SUMPRODUCT 函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhongguomao/article/details/83039084

说明

在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。

语法

SUMPRODUCT(array1, [array2], [array3], ...)

SUMPRODUCT 函数语法具有下列参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。)

  • Array1    必需。 其相应元素需要进行相乘并求和的第一个数组参数。
  • Array2, array3,...    可选。 2 到 255 个数组参数,其相应元素需要进行相乘并求和。

说明

  • 数组参数必须具有相同的维数。 否则,函数 SUMPRODUCT 将返回 #VALUE! 错误值 #REF!。
  • 函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理

实际应用:求月度销售总额。

以前的方法是单个相乘,然后SUM函数一拉得到结果。

现在我们用SUMPRODUCT函数来计算的话,只需要分别选中单价列数值以及数量列数值两个序列即可。

=SUMPRODUCT(D3:D11,E3:E11)       --  注意序列与序列之间用逗号分隔,序列的维数必须相同。

其实SUMPRODUCT函数最大的用处并非在于此,下面我们用一个更为实用的例子来说明。

比如有一批数据,我们要找出其中的重复项目,直白理解就是根据多个条件列找到相同的记录。

这个时候用别的函数的话稍微有点绕,但是用SUMPRODUCT函数一个就可搞定。

班级列:选中A2:A12序列,按下F4区域锁定,然后让其等于A2;

姓名列:选中B2:B12序列,按下F4区域锁定,然后让其等于B2;

学号列:选中C2:C12序列,按下F4区域锁定,然后让其等于C2;

然后我们用乘号连接,可以得到如下结果:

我们可以发现重复的记录显示2,不重复的均显示1,可以用IF函数改造一下进行显示。

那么问题来了,这个2和1是怎么算出来的呢?

我们不妨选中公式第一个括号的内容,键盘按下F9,如下图所示:

以此类推:它是以True和False的方式来显示的。

以第一行为例:

班级:{TRUE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}

姓名:{TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}

学号:{TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}

其中TRUE = 1,FALSE = 0,TRUE*TRUE*TRUE = 1,TRUE*FALSE*FALSE= 0.

然后第一行的最后结果是1+0+0+0+0+0+0+0+0+0+0 = 1。

再看第二行:

班级:{TRUE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}

姓名:{FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}

学号:{FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}

第二行的结果为:0+1+0+0+0+1+0+0+0+0+0 = 2。

明白之后就请记住这个可怜的函数吧!

猜你喜欢

转载自blog.csdn.net/zhongguomao/article/details/83039084