在 excel 里面平均值公式最核心就是 average 函数,除此之外还有单条件求平均的 averageif,多条件求平均的 averageifs,筛选可见行求平均的 subtotal,以及可以忽略错误值的 aggregate,不同平均值公式适用场景不一样,普通整列全部数字求平均直接用 average 最快,需要按条件筛选之后再求平均,就要切换成条件类平均值公式,很多新手使用平均值公式出错,主要是不清楚函数会自动跳过文本和空单元格,但是遇到错误值会直接报错,还有混淆 averageif 和 averageifs 的参数顺序,excel 平均值公式底层逻辑,就是把有效数值求和之后,除以有效数值单元格的数量,不是简单把所有单元格数量作为分母,理解这个底层规则,后续处理异常数据就知道怎么调整公式。
第一种 average 函数 基础平均值公式
这是最通用的平均值公式,适合连续区域全部数值求平均,是 excel 平均值公式怎么用里面最基础的版本。
基础公式
=AVERAGE (A1:A100)
公式解释,A1 到 A100 就是参与计算的数据区间,函数会自动统计区间内所有数字,空单元格和文本单元格会自动跳过,不参与计算。
操作步骤
第一步 点击存放结果的空白单元格
第二步 输入等号,再输入 average 函数,括号里面填写实际数据区间
第三步 按下回车键,单元格直接输出平均值结果
第四步 如果是多列或者多行分散数据,可以多个区域用逗号隔开,写法 = AVERAGE (A1:A5,C1:C5)
整列引用写法
=AVERAGE (A:A)
这个写法代表引用 A 整列,后续新增数据,平均值会自动更新,适合持续追加数据的表格。
第二种 averageif 单条件平均值公式
当不需要全部数据参与计算,只计算满足某一个条件的数据平均值,就使用 averageif,属于进阶平均值公式。
公式格式
=AVERAGEIF (条件区域,条件,求平均区域)
举例,A 列是部门名称,B 列是业绩,只计算销售部业绩平均值
=AVERAGEIF (A:A,"销售部",B:B)
操作步骤
第一步 选中空白结果单元格
第二步 依次填写条件区域,筛选条件,还有需要计算平均值的数据列
第三步 回车确认,得到符合条件数据的平均值
适用场景
按部门,按品类,按月份单独分组求平均,单维度筛选统计。
第三种 averageifs 多条件平均值公式
需要同时满足两个以及更多筛选条件,再计算目标列平均值,就使用 averageifs,是多条件版本平均值公式。
公式格式
=AVERAGEIFS (求平均区域,条件区域 1, 条件 1, 条件区域 2, 条件 2)
举例,A 列部门,B 列月份,C 列业绩,计算销售部并且是三月的业绩平均值
=AVERAGEIFS (C:C,A:A,"销售部",B:B,"三月")
操作步骤
第一步 选定结果单元格输入公式
第二步 重点注意参数顺序,第一个参数就是求平均的数据列,这点和 averageif 顺序不一样,很容易写反报错
第三步 依次填写多组条件区域和条件,回车计算结果
第四种 subtotal 筛选状态平均值公式
表格开启筛选之后,普通 average 函数依旧会把隐藏行的数据一起算进去,如果只想计算筛选之后可见单元格的平均值,就要使用 subtotal 这个平均值公式。
公式
=SUBTOTAL (1,A1:A100)
参数里面数字 1 代表求平均值,这个函数特性就是自动忽略筛选隐藏行,只统计当前可见单元格。
操作步骤
第一步 输入 subtotal 公式,第一个参数填 1,后面填写数据区间
第二步 后续切换筛选条件,平均值会跟着可见数据自动刷新
第五种 aggregate 带容错平均值公式
数据区间里面存在 N/A DIV/0 这类错误值,普通 average 平均值公式会直接报错,aggregate 可以设置参数跳过错误值继续计算平均值。
公式
=AGGREGATE (1,6,A1:A100)
第一个参数 1 代表求平均值,第二个参数 6 代表忽略错误值。
操作步骤
第一步 在结果单元格输入 aggregate 公式
第二步 设置两个控制参数,再填入数据区间
第三步 回车,就算区间里面有错误值,依旧可以算出有效数字平均值
各类平均值公式对比表格
| 平均值公式 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| average | 整列全部数值求平均 | 通用性强,支持整列引用 | 遇到错误值直接报错 |
| averageif | 单个筛选条件求平均 | 单类别分组统计 | 只支持一个筛选条件 |
| averageifs | 两个及以上条件求平均 | 多维度筛选计算 | 参数顺序容易写反 |
| subtotal | 筛选可见行求平均 | 自动排除隐藏行 | 不支持自定义组合筛选条件 |
| aggregate | 带错误值的数据求平均 | 可以忽略错误值 | 参数含义需要记忆 |
特殊情况处理要点
第一 零值计算,average 平均值公式会把单元格里面的 0 当成有效数字参与计算,如果不想把 0 纳入平均值,搭配 averageif 设置条件大于 0。
第二 文本型数字,单元格外观是数字但是格式是文本,average 平均值公式会自动跳过,计算结果就会和手动计算不一致,需要先把单元格转换为数值格式。
第三 没有符合条件的数据,averageif 或者 averageifs 如果筛选之后没有匹配的数据,公式会返回 DIV/0 错误,可以搭配 iferror 包裹公式,把错误显示为空。
第四 小数位数,平均值公式算出结果之后,可以在开始选项卡调整小数位数,这个只是修改显示效果,单元格内部原始数值不会改变。
第五 跨工作表求平均,如果数据在另外一张工作表,区间前面加上工作表名称,例如 Sheet2!A1:A100。
总结
普通整列全部数字求平均,优先使用 average 平均值公式,单条件分组求平均用 averageif,多条件筛选求平均使用 averageifs,筛选之后只算可见行平均值就选择 subtotal,数据里面有错误值干扰计算,换成 aggregate 平均值公式,使用的时候重点留意单元格格式,参数顺序,还有错误值处理,掌握这些要点,就可以稳定使用 excel 平均值公式完成各类统计计算。
【常见问题】
问题 1 excel 平均值公式怎么用,为什么计算结果和手动算的不一样
回答 1 excel 平均值公式怎么用结果偏差,常见原因是单元格是文本型数字,average 平均值公式会自动跳过这类内容,或者区间里面包含零值被纳入计算,核对单元格格式和统计区间,就可以修正 excel 平均值公式怎么用的计算偏差。
问题 2 excel 平均值公式怎么用,区间里面有错误值公式报错怎么办
回答 2 excel 平均值公式怎么用遇到错误值报错,可以改用 aggregate 平均值公式,设置参数忽略错误值,也可以提前清理单元格里面的错误符号,清理之后继续使用 average 平均值公式,正常完成 excel 平均值公式怎么用。
问题 3 excel 平均值公式怎么用,筛选之后平均值不会跟着变化是什么原因
回答 3 excel 平均值公式怎么用筛选不刷新,是因为使用普通 average 平均值公式,普通 average 会统计全部行包含隐藏行,想要筛选后自动更新,替换成 subtotal 平均值公式,参数设置为 1,实现 excel 平均值公式怎么用随筛选可见行自动更新。
问题 4 excel 平均值公式怎么用,averageif 和 averageifs 参数顺序有什么区别
回答 4 excel 平均值公式怎么用,averageif 第一个参数是条件区域,averageifs 第一个参数是求平均区域,顺序不一样,写反之后公式就会报错,按照正确参数顺序填写,就可以正常使用 excel 平均值公式怎么用。
【免责申明】
本文教程基于主流 excel 版本编写,averageifs aggregate 新版函数在旧版 excel 存在兼容性差异,操作前建议备份原始表格,公式计算结果受单元格格式和数据类型影响,本文仅作为技术参考,不承担因操作失误带来的数据错误相关责任。


