同事问了一个excel多条件求和的问题,要求在表格中两列满足条件的情况下对第三列进行求和计算,原来以为只要用vlookup函数列个公式就得,但vlookup得出的结果是单个值,而不是一组数,无法用SUM函数合计,只好想出一个变通的方法:单行用IF判断是符合条件,得出对应的值(符合条件的取对应值,不符的取0),拖运复制公式到所有行上,最后统计这一列的合计数。
变通的方法有点笨,不理想,还是去网上搜索一下,果然有收获。如用数组的方法实现多条件求和,例如一张工资表(假设有100行,A列为“部门”,C列为“性别”,F列为“工资”),要求A列和C列中分别为“销售部”和“男性”的员工工资(F列)的总额,可以在相应的单元格中输入 =SUM((A2:A100="销售部")*(C2:C100="男性")*(F2:F100))
注意,输入完成后,不能直接按回车,因为这是数组公式,要按ctrl+shift+Enter确认,这样这个数组公式两端会出一对大括号,即{=SUM((A2:A100="销售部")*(C2:C100="男性")*(F2:F100))},同时计算出结果来。
除了数组外,还可以用自动筛选的方法,并使用SUBTOTAL公式实现;还有条件求和向导(工具-向导-条件求和,如果没有,可以先在宏中加载“条件求和向导”)。另外在excel2007上的新函数SUMIFS能很方便的实现多条件求和,当然你要先升级到2007以上的excel(附SUMIFS使用方法:=SUMIFS(A1:A10,B1:B10,C1,D1:D10,E1),即求和A1:A10区域,满足条件1、条件2,条件1是B1:B10满足条件C1,即B1:B10列中=C1,条件2是D1:D10满足E1,即D1:D10列中=E1的。同样还有COUNTIFS,多条件计数,参数格式与SUMIFS类似,新版本office提供的函数确实简单好用)。
另外,单条件求和使用sumif()函数,参见http://blog.sina.com.cn/s/blog_53f6c6cd01000bz3.html
>> 除非说明均为原创,如转载请注明来源于http://www.stormcn.cn/post/762.html