今天带大家来认识一个看起来简单但又复杂的函数:SUMPRODUCT。
了解SUMPRODUCT的实质
SUMPRODUCT函数的用法非常简单,就是得到两列数据的乘积之和,先用一个简单的例子来说明函数的基本功能:
上图是一个非常简单的表格,要算出总价一般都是将单价*数量算出来再求和,结果如D8所示。如果使用了SUMPRODUCT函数的话,就可以直接利用单价和数量计算出总价,公式1为:=SUMPRODUCT(B2:B7,C2:C7),结果如D9所示。
在这个公式里,使用了两个参数,分别是单价区域(B2:B7)和数量区域(C2:C7),函数的作用就是将第一参数(单价)与第二参数(数量)中的数据对应相乘后再求和。
错误使用:
(1)使用该函数时,需要保证区域大小的选择一致,否则可能会得到错误的返回值
该实例说明区域选择不一致,SUMPRODUCT函数无法返回正确值
(2)将公式中的逗号变成了星号
即将公式中的=SUMPRODUCT(B2:B7,C2:C7)写成了=SUMPRODUCT(B2:B7*C2:C7)
该图显示的是两个不同的公式得出相同的结果
但其实二者要想保证其结果一致是需要一定的前置条件限制,具体且看二者差异:
(1)公式(SUMPRODUCT(B2:B7,C2:C7))有两个参数;而第二个公式(B2:B7*C2:C7)是一个参数。(以逗号区分公式的参数个数)
(2)公式(SUMPRODUCT(B2:B7,C2:C7))的两个区域相乘是由函数完成,即先让两个区域的数据对应相乘,再把相乘的结果进行相加;第二个公式(B2:B7*C2:C7)两个区域的相乘是由数组计算来完成,函数只需将乘积值相加
(3)公式(SUMPRODUCT(B1:B7,C1:C7))中的逗号(,)首先让两组数据对应相乘,相乘的时候会检查数据并把非数值型数据作为0处理,然后在把乘积相加。因此,B1“单价”和C1“数量”会当成0来处理,公式可以得到正确结果。
当把公式中的逗号换成*号之后,公式结果就会显示错误,其主要原因在于SUMPRODUCT函数在该公式中职负责将乘积的结果相加,参数B1:B7*C1:C7是数组乘法运算,因计算的区域中包含了文字,而文字不可进行乘法运算,故此数组的计算结果里就有错误值了。
SUMPRODUCT用乘号(*)的要点
(1)不能存在无法计算的内容,例如文字、特殊符号等
(2)如果两组或者多组数组进行相乘计算的话,需要保证数据区域的大小一致
SUMPRODUCT用乘号(*)的优势
(1)当公式中为逗号时,则区域中的内容必须同时为数值或者数组,不能一个为数值,另一个为数组
(2)当公式中为*号时,区域内容可同时为数值或数组,也可一个为数组,另一个为数值
了解逻辑值和数组,灵活运用SUMPRODUCT函数
(1)逻辑值:逻辑值只有两个,就是TRUE和FALSE。当我们在公式里进行某种比较或者判断的时候,就会产生逻辑值
以SUMPRODUCT((I2:I22="张三")*1) 为例,其中的(I2:I22="张三")就是一个判断,如图
通常情况下,我们是以单元格去做判断,I2 ="张三"的意思就是判断I2单元格内容是否为"张三",如果是则得到TRUE,反之得到FALSE。
(2)数组:当我们使用了一个区域去判断的时候,就会得到一组数据,这其实就是一个数组了。例如I2:I22="张三"就会得到一组逻辑值。
由于逻辑值无法直接进行求和,必须转换为数字才行,转换的方法是对逻辑值进行加减乘除之一的任何运算即可,故在该公式中*1
通过*1运算后TRUE就变成了1,而FALSE就变成了0
有关SUMPRODUCT函数的灵活用法还有很多,只要掌握了核心的用法技巧,都可以进行灵活的使用。
关于此函数的讲解就暂时到这里,点击关注,转发分享给更多需要的小伙伴~
此图来源于网络,侵删关注公众号:蚂蚁都是光脚丫,分享学习干货,聊生活,聊情感,等待有趣的灵魂,期盼遇见你~
网友评论