废话少说,先看看基本数据:
数据里面首先有“部门”分组,然后有“级别”分组,为了演示公式,数据里还有0, 50, 100固定3种补助形式。我们要根据这些数据进行一些分组合计。 1. 单一条件集计, 对于简单的单一条件我们直接使用 sumif 公式就可以达到目的。 公式说明: sumif(匹配范围, 条件, 合计范围) 我们来看看怎么统计3个部门的工资,OK先准备3个单元格,公式写入 =sumif(A$2:A$15, G2, D$2:D$15) A列是条件匹配列,D列式合计列,“$”表示固定位置拷贝公式的时候不会自动改变位置。这样写好第一个公式后,直接拷贝到下面其他单元格公式也能正常执行。否则拷贝公式时,公式里的范围会自动往下加1。
显示结果如下:
2. 复合条件集计,对于一个条件以上的集计 sumif 就不能派上用场了,sumproduct 隆重登场。 公式说明: sumproduct(数组1, 数组2, 数组3, …) 它将多个数组相乘后合计。数组中非数字的数据将被当做0计算。 为了了解 sumproduct 公式,先看一个简单的应用: 那么结果应该是 =30x3 + 40x2 + 50x1 =220 那么可以利用: 数组1=xxx (xxx可以是指定的数据,也可以是单元格) 这样的表达式进行某种条件的过滤, 分析一下 sumproduct((A1:A10=a)*(B1:B10)) 就相当于 (A1=a)*B1 + (A2=a)*B2 + … + (A10=a)*B10 的写法,其中条件匹配的话返回的就是1,不匹配就是0。所以匹配的就会加上,不匹配的就相当于加上0。 接上,我们进一步求出“各部门中不同级别的合计”: =SUMPRODUCT((A$2:A$15=A20)*(C$2:C$15=B20)*D$2:D$15) 解释一下就是 部门列满足单元格A20内容,且级别列满足单元格B20内容,的工资进行合计。 如上图所示,行政部中所有级别是A的工资被合计出来了。(涂成黄色部分) 3. sumproduct 除了sum功能,我们还可以利用它进行 count。 我们还要统计出各个部门里补助=100的个数,怎么做呢? =SUMPRODUCT((A$2:A$15=A18)*(E$2:E$15=B18)) 这个公式的解释就是匹配的加1,不匹配的加0。
多谢收看,本介绍完毕~