You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Excel中结合AVERAGEIF与AGGREGATE计算分组均值?

解决方案

以下是几个能实现按阶段筛选并忽略错误值的平均百分比计算方法:

方法1:AGGREGATE函数组合(兼容多数Excel版本)

使用AGGREGATE的错误忽略特性,结合条件筛选生成有效数据集:

=AGGREGATE(1,6,Table1[PERCENTAGE]/(Table1[PHASE]="Phase 1"))
  • 参数说明:1代表计算平均值,6代表忽略所有错误值;
  • 原理:通过Table1[PHASE]="Phase 1"生成逻辑数组,不符合条件的项会让除法返回#DIV/0!,AGGREGATE会自动忽略这些错误和原始的N/A等错误值,只计算符合条件的有效百分比的平均值;
  • 注意:旧版Excel需要按Ctrl+Shift+Enter作为数组公式输入,Excel 365/2021直接回车即可。

方法2:SUMPRODUCT函数组合(兼容所有Excel版本)

分别计算符合条件的有效数值总和与数量,再求商:

=SUMPRODUCT((Table1[PHASE]="Phase 1")*ISNUMBER(Table1[PERCENTAGE])*Table1[PERCENTAGE])/SUMPRODUCT((Table1[PHASE]="Phase 1")*ISNUMBER(Table1[PERCENTAGE]))
  • 原理:(Table1[PHASE]="Phase 1")筛选目标阶段,ISNUMBER(Table1[PERCENTAGE])排除所有错误值(N/A、#VALUE!等);
  • 第一个SUMPRODUCT计算符合条件的有效百分比总和,第二个计算有效数据的数量,两者相除得到平均值;
  • 优势:无需数组输入,所有Excel版本都能直接使用。

方法3:AVERAGE+FILTER组合(Excel 365/2021及以上)

利用动态数组函数简化逻辑,更直观易懂:

=AVERAGE(FILTER(Table1[PERCENTAGE],(Table1[PHASE]="Phase 1")*ISNUMBER(Table1[PERCENTAGE])))
  • 原理:FILTER先筛选出属于目标阶段且为有效数值的百分比数据,再用AVERAGE计算这些数据的平均值;
  • 优势:公式逻辑清晰,可读性强,自动适配动态数据变化。

内容的提问来源于stack exchange,提问作者Tony

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 21:47:40