欢迎来到天天文库
浏览记录
ID:15965264
大小:47.00 KB
页数:3页
时间:2018-08-06
《多条件求和及sumproduct函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Excel多条件求和&SUMPRODUCT函数用法详解龙逸凡日常工作中,我们经常要用到多条件求和,方法有多种,第一类:使用基本功能来实现。主要有:筛选、分类汇总、数据透视表、多条件求和向导;第二类:使用公式来实现方法。主要有:使用SUM函数编写的数组公式、联用SUMIF和辅助列(将多条件变为单条件)、使用SUMPRODUCT函数、使用SUMIFS函数(限于Excel2007及以上的版本),方法千差万别、效果各有千秋。本人更喜欢用SUMPRODUCT函数。由于Excel帮助对SUMPRODUCT函数的解释太简短了,与SUM
2、PRODUCT函数的作用相比实在不匹配,为了更好地掌握该函数,特将其整理如下。龙逸凡注:欢迎转贴,但请注明作者及出处。一、基本用法在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。语法:SUMPRODUCT(array1,array2,array3,...)Array1,array2,array3,...为2到30个数组,其相应元素需要进行相乘并求和。公式:=SUMPRODUCT(A2:B4,C2:D4)ABCD1Array 1Array 1Array 2Array 2234273866741953公式解释:两
3、个数组的所有元素对应相乘,然后把乘积相加,即3*2+4*7+8*6+6*7+1*5+9*3。计算结果为156二、扩展用法1、使用SUMPRODUCT进行多条件计数语法:=SUMPRODUCT((条件1)*(条件2)*(条件3)*…(条件n))作用:统计同时满足条件1、条件2到条件n的记录的个数。实例:=SUMPRODUCT((A2:A10="男")*(B2:B10="中级职称"))公式解释:统计性别为男性且职称为中级职称的职工的人数1、使用SUMPRODUCT进行多条件求和语法:=SUMPRODUCT((条件1)*(条件
4、2)*(条件3)*…(条件n)*某区域)作用:汇总同时满足条件1、条件2到条件n的记录指定区域的汇总金额。实例:=SUMPRODUCT((A2:A10="男")*(B2:B10="中级职称")*C2:C10)公式解释:统计性别为男性且职称为中级职称的职工的工资总和(假设C列为工资)一、注意事项1、数组参数必须具有相同的维数,否则,函数SUMPRODUCT将返回错误值#VALUE!。2、SUMPRODUCT函数将非数值型的数组元素作为0处理。3、在SUMPRODUCT中,2003及以下版本不支持整列(行)引用,必须指明范围
5、,不可在SUMPRODUCT函数使用A:A、B:B,Excel2007及以上版本可以整列(列)引用,但并不建议如此使用,公式计算速度慢。4、SUMPRODUCT函数不支持“*”和“?”通配符SUMPRODUCT函数不能象SUMIF、COUNTIF等函数一样使用“*”和“?”等通配符,要实现此功能可以用变通的方法,如使用LEFT、RIGHT、ISNUMBER(FIND())或ISNUMBER(SEARCH())等函数来实现通配符的功能。如:=SUMPRODUCT((A2:A10="男")*(B2:B10="中级职称")*(
6、LEFT(D2:D10,1)="龙")*C2:C10)=SUMPRODUCT((A2:A10="男")*(B2:B10="中级职称")*((ISNUMBER(FIND("龙逸凡",D2:D10)))*C2:C10))注:以上公式假设D列为职工姓名。ISNUMBER(FIND())、ISNUMBER(SEARCH())作用是实现“*”的通配功能,只是前者区分大小写,后者不区分大小写。5、SUMPRODUCT函数多条件求和时使用“,”和“*”的区别:当拟求和的区域中无文本时两者无区别,当有文本时,使用“*”时会出错,返回错误
7、值#VALUE!,而使用“,”时SUMPRODUCT函数会将非数值型的数组元素作为0处理,故不会报错。也就是说:公式1:=SUMPRODUCT((A2:A10="男")*(B2:B10="中级职称")*C2:C10)公式2:=SUMPRODUCT((A2:A10="男")*(B2:B10="中级职称"),C2:C10)当C2:C10中全为数值时,两者计算结果一样,当C2:C10中有文本时公式1会返回错误值#VALUE!,而公式2会返回忽略文本以后的结果。一、网友们的精彩实例1、求指定区域的奇数列的数值之和=SUMPROD
8、UCT(MOD(COLUMN(A1:F1),2)*A1:F1)2、求指定区域的偶数行的数值之和=SUMPRODUCT(((MOD(ROW(A1:A22),2))-1)*A1:A22)*(-1)3、求指定行中列号能被4整除的列的数值之和=SUMPRODUCT((MOD(COLUMN(A1:P1),4)=0)*A1:P1
此文档下载收益归作者所有