Excel 中计算平均值时如何自动排除最大值和最小值

Excel 中计算平均值时如何自动排除最大值和最小值

如果我想取中位数平均值(排除最高值和最低值),有没有办法在 Excel 上执行此操作,而不必手动查找并从平均值计算中排除最高值和最低值?

答案1

您所描述的内容没有内置函数。但是,它不需要 VBA 宏。尝试以下公式:

=(SUM(myRange) - MAX(myRange) - MIN(myRange)) / (COUNT(myRange) -2)

myRange用单元格范围替换(即A1:A10:)。

答案2

Steven 的回答对于旧版本的 Excel 来说很棒。但是,在 Excel 2010 及更新版本中(可能在 Excel 2007 中也是如此),新函数SUMIFSCOUNTIFS可用于生成此类平均值的非常灵活的版本:

Excel 片段

中位数平均值的函数为:

=SUMIFS(B2:B7,B2:B7,"<"&LARGE(B2:B7,1),B2:B7,">"&SMALL(B2:B7,1))/COUNTIFS(B2:B7,"<"&LARGE(B2:B7,1),B2:B7,">"&SMALL(B2:B7,1))

如果您想要一个从列表极端中排除更多值的中位数平均值,则只需更改和函数中的四个值1以匹配要排除的值的数量。SMALLLARGE

相关内容