Excel函数(26)–用averageif计算班级平均分

我上周写过一篇用数据透视表的方式求各班级平均分,即带条件求平均值,具体可参见 Excel – 公式3

我上周写过一篇用数据透视表的方式求各班级平均分,即带条件求平均值,具体可参见 Excel – 公式3小时,数据透视表1分钟,计算各班平均分。

更早的时候,在讲解 sumproduct 函数的时候,也写过用这个函数怎么解决类似问题,可参见 Excel函数(四) – sumproduct函数计数、排名、求和等等

今天我教大家两个新函数 averageif 和 averageifs,分别用来解决带单一条件和多条件求平均值,操作也非常简单,因为不需要跟其他函数组合使用。

案例:

下图 1 是各班学生的高考成绩,需要如下图 2 所示,求以下两种平均分:

1) 每个班级的高考平均分

2) 去除 600 分以上的成绩后,各班的平均分

解决方案 1:求每个班级的高考平均分

本需求是比较典型的带一个条件求平均值,可以用 AverageIf 函数来解决。

AverageIf 函数语法:

AVERAGEIF(Range,Criteria,[Average_Range])

  • Range:需要求平均值的区域范围;如果有 Average_Range,则 Range 为条件区域范围

    Criteria:条件

    Average_Range:求平均值的实际区域范围

    如果 Range 或 Average_Range 选定的单元格中有逻辑值 True 或 False,它们将被忽略

    如果 Average_Range 选定的单元格为空单元格,将被忽略

    Criteria 可以是文字,也可以用大小于和等于号

    如果条件 Criteria 包含空单元格,将被视为 0 值;如果选定的区域没有满足条件的单元格,将返回错误值

    1. 了解完语法,现在可以开始设置公式了:在 F2 单元格输入以下公式:

    =AVERAGEIF(A:A,E2,C:C)

    公式释义:

    • A:A:条件范围

      E2:条件值,即“一班”

      C:C:求平均值的实际区域范围

      2. 这就是得到的结果

      3. 把单元格格式设置为保留一位小数,向下拖动公式,即可得到各班平均分

      解决方案 2:求去除 600 分以上的成绩后,各班的平均分

      本需求有两个条件:一个是按班级求平均值,另一个是去除 600 分以上的成绩,所以需要用 AverageIfs 函数。

      AverageIfs 函数语法:

      AVERAGEIFS(Average_Range,Criteria_Range1,Criteria1,Criteria_Range2,Criteria2,...)

      • Average_Range:求平均值的区域范围

        Criteria_Range1,Criteria_Range2...:条件区域

        Criteria1,Criteria2...:条件

        1. 现在开始设置公式:在 G2 单元格输入以下公式:

        =AVERAGEIFS(C:C,A:A,E2,C:C,"<600")

        公式释义:

        • C:C:求平均值的实际区域范围

          A:A:条件范围 1

          E2:条件 1,即“一班”

          C:C:条件范围 2

          "<600":条件 2

          2. 把单元格格式设置为保留一位小数,向下拖动公式,即可得到所需结果


打开APP阅读更多精彩内容