时间:2021-11-05 12:42作者:admin来源:未知人气:3785我要评论(0)
Sumproduct可以分为Sum和product,这分开的两个函数都是独立的函数,sum是求和,product是乘积,和起来我一般叫它乘积求和函数。SUMPRODUCT函数向来被称之为万能函数,可以进行各种条件计数和条件求和。 先说下它的语法:SUMPRODUCT(array1, [array2], [array3], ...),array是数组的意思,我们可以有255组,当然我们很少会用到这么多,一般用到4-5个就不错了,我最多也就用过8个,当时为了多条件查询数据,未获得保险产品费率,需要产品名称、缴费方式、缴费年期、部门/分公司、首期/续期等信息。 先透露下,这个函数不但可以做自己的事,也能做sumifs的事,甚至连countifs的事也一起做了。
SUMPRODUCT函数是在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。其语法如下:
=SUMPRODUCT(array1,[array2],[array3],...
array1:必需。其相应元素需要进行相乘并求和的第一个数组参数。
array2,array3,...:可选。2到255个数组参数,其相应元素需要进行相乘并求和。
SUMPRODUCT函数注意事项:
1.在使用SUMPRODUCT函数时,数组参数必须具有相同的维数。
2.区域或数组中非数值元素将会当0处理
SUMPRODUCT函数经常用来根据指定条件进行精确查找,其实也可以进行模糊查找。如下图表格所示,如何统计城区小学所有男学生的成绩之和?
解决:这里城区小学包括城区一小、城区二小和城区三小,可以进行模糊条件查找。因为SUMPRODUCT函数函数是不支持通配符*或者?的,所以我们在进行模糊条件查找时,需要结合其它函数来实现。输入公式
=SUMPRODUCT(ISNUMBER(FIND("城区",C2:C13))*(B2:B13="男"),D2:D13)
说明:先用FIND函数在C2:C13这个区域中查找“城区”这个字符串,若存在返回相应位置,不存在则返回#VALUE!错误值;ISNUMBER函数是用来检测是否为数值,是的话返回TRUE,否则返回FALSE;最后用SUMPRODUCT函数进行多条件求和。
如下图表格所示,我们如何求出各个季度的成交总数?
解决:选中统计表中的空白单元格区域,在E2单元格中输入公式
=SUMPRODUCT(N(CEILING(MONTH($A$2:$A$15)/3,1)=D2),$B$2:$B$15),
按Ctrl+Enter组合键完成所有公式填充。
在工作中,我们经常需要根据一维表数据源,在二维表里进行分类统计。如下图表格所示,如何统计各门店各类商品的销量?
解决:选中二维表中的空白单元格区域,在F2单元格中输入公式
=SUMPRODUCT(($A$2:$A$25=F$1)*($B$2:$B$25=$E2),$C$2:$C$25),
按Ctrl+Enter组合键完成所有公式填充。
说明:这里用到的实际上是SUMPRODUCT函数的多条件求和,公式中第一个条件是指定的门店,注意F1单元格的引用是锁定行,第二个条件指定的商品,注意E2单元格的引用是锁定列。
表格内数据按项目组归类排布,如果进行分组排名,可输入公式:
=SUMPRODUCT(($B$2:$B$14=B2)*($C$2:$C$14>C2))+1
说明:这里利用SUMPRODUCT函数进行多条件计数,$B$2:$B$14=B2求出当前单元格所在小组的个数,$C$2:$C$14>C2求出单元格区域中大于当前单元格的个数。统计完成后在得出的数字基础上加上1,就得到了当前单元格在所属组别中的名次。
如果项目组之间数据打乱,也可以添加分组名称进行详细标注,这时我们输入公式:
=B2&"第"&SUMPRODUCT(($B$2:$B$14=B2)*($C$2:$C$14>C2))+1&"名"
上面例子中,我们对分组进行排名,出现并列名次时是按照西式的排名方式。如果要根据中国式的分组排名,我们可以输入数组公式:(Ctrl+Shift+Enter 三键输入)
=SUMPRODUCT(($B$2:$B$14=B2)*($C$2:$C$14>=C2)/
COUNTIFS($B$2:$B$14,$B$2:$B$14,$C$2:$C$14,$C$2:$C$14))
说明:这里用到了SUMPRODUCT函数的多条件求和,=SUMPRODUCT((条件1)*(条件2)*…*求和区域)。这里我们可以把公式看成:=SUMPRODUCT(($B$2:$B$14=B2)*($C$2:$C$14>=C2)*1/COUNTIFS($B$2:$B$14,$B$2:$B$14,$C$2:$C$14,$C$2:$C$14))
($B$2:$B$14=B2)*($C$2:$C$14>=C2)这部分为条件1和条件2,在B列和C列中,对等于B2且C列对应单元格大于C2进行条件判断,满足的话为TRUE,否则为FALSE,两者相乘为1或0,得到是数组结果;
COUNTIFS($B$2:$B$14,$B$2:$B$14,$C$2:$C$14,$C$2:$C$14),这里是查找B列到C列中,每一行出现的次数,得到数组结果是{1;1;1;1;1;1;2;1;2;1;1;1;1};
1/COUNTIFS($B$2:$B$14,$B$2:$B$14,$C$2:$C$14,$C$2:$C$14)得到的结果是
{1;1;1;1;1;1;0.5;1;0.5;1;1;1;1},0.5+0.5=1,得出的结果可以视为区域中不重复项的个数。
符合($B$2:$B$14=B2)*($C$2:$C$14>=C2)这两个条件并统计区域中不重复项的个数,即可得到排名结果。
相关阅读 Excel有哪些常用的数学函数?Excel取消表格中虚线的两种方法Excel最常见的「错误值」,这些含义你都知道吗?实现快速找出Excel表格中两列数据不同内容的3种方法!如何利用Excel一键提取身份证的这些重要信息,公式直接套用!Excel如何制作动态红绿灯,工作可不要亮红灯哦Excel身份证号大探索excel如何根据日期按月汇总计算公式Excel浪漫表白公式,发给心仪的她/他Excel表格如何自动求和
热门文章 excel 两表数据快速对比,高手都是这样做,四种方法随你选.xlsm是什么文件格式,以及xlsm文件怎么打开的方法excel if函数如何多个条件并列excel中计算加权平均数的公式:用SUMPRODUCT和SUM函数计算加权平均
最新文章
Excel有哪些常用的数学函数?Excel取消表格中虚线的两种方法
Excel最常见的「错误值」,这些含义你都知道吗?实现快速找出Excel表格中两列数据不同内容的3种方法!如何利用Excel一键提取身份证的这些重要信息,公式直接套用!Excel如何制作动态红绿灯,工作可不要亮红灯哦
人气排行 excel 两表数据快速对比,高手都是这样做,四种方法随你选.xlsm是什么文件格式,以及xlsm文件怎么打开的方法excel if函数如何多个条件并列excel中计算加权平均数的公式:用SUMPRODUCT和SUM函数计算加权平均excel中IF条件函数10大用法完整版,全会是高手,配合SUMIF,VLOOKUPexcel中COUNTIFS函数9种高级用法详解,条件统计重复值,告别加班涨工如何解除Excel VBA工程密码excel 如何根据身份证号码提取户籍所在省份地区函数公式
盖楼回复X
(您的评论需要经过审核才能显示)
查看所有0条评论>>