第1个回答 2013-08-11
单条件求和是 SUMIF、单条件计数是 COUNTIF、单条件平均是 SUMIF/COUNTIF,这个只要用 EXCEL 函多条件:
如果是offcie 2003版,那只能用那个蜗牛数组函数来解决2010版: 点击编辑栏(在选项卡和列标之间)左边的 fx
如果是在2003版,在类别中选择“ 统计 ”,就可以先找到 COUNTIF 这个函数:
用同样的方法在2003版的“ 数学与三角函数 ”类别里找,可以看到 SUMIF:
而2010版里,SUMIF 和 SUMIFS 是同时进行的:
单从函数名:COUNTIFS 是 COUNTIF 的复数形式、SUMIFS 是 SUMIF 的复数形式 多条件计数:COUNTIFS
在原来 COUNTIF 两个参数的基础上增加N多条件和条件区域。
多条件求和:SUMIFS
在原来的 SUMIF 三个参数的基础上增加N多条件和条件区域。
多条件平均:AVERAGEIFS
本身在2010版里,单条件平均已不再需要 SUMIF/COUNTIF,而是一个 AVERAGEIF 就可以解决,不仅如此,还在 AVERAGEIF 的基础上新增了多条件平均函数 AVERAGEIFS,这两个函数与 COUNTIF 同属“ 统计 ”类别:
AVERAGEIFS 的参数:
要分别求部门二经理人员的人数、总工资、平均工资:
部门二经理人员的人数: =COUNTIFS(C2:C24,"部门二",E2:E24,"经理")
部门二经理人员的总工资: =SUMIFS(F2:F24,C2:C24,"部门二",E2:E24,"经理")
部门二经理人员的平均工资: =AVERAGEIFS(F2:F24,C2:C24,"部门二",E2:E24,"经理")
如果数据源25行以后就没有内容,上面这三个函数还可以引用整列:
部门二经理人员的人数: =COUNTIFS(C:C,"部门二",E:E,"经理")
部门二经理人员的总工资: =SUMIFS(F:F,C:C,"部门二",E:E,"经理")
部门二经理人员的平均工资: =AVERAGEIFS(F:F,C:C,"部门二",E:E,"经理")
比较一下,如果用2003版函数:
部门二经理人员的人数: =SUMPRODUCT((C2:C24="部门二")*(E2:E24="经理"))
部门二经理人员的总工资: =SUMPRODUCT((C2:C24="部门二")*(E2:E24="经理")*F2:F24)
部门二经理人员的平均工资: = SUMPRODUCT((C2:C24="部门二")*(E2:E24="经理")*F2:F24)/ SUMPRODUCT((C2:C24="部门二")*(E2:E24="经理"))
这种用法不仅不能引用整列,而且数据量大时运算速度非常慢。
(以上三个函数亦可以用 SUM 数组,即以 SUM 代替 SUMPRODUCT,按 CTRL+SHIFT+ENTER 结束)