【问题标题】:Calculate the average but ignore the error计算平均值但忽略误差
【发布时间】:2016-08-01 14:33:25
【问题描述】:

我有三列数据(每列包含一个控件的结果)。但是这三列中有一些单元格不包含数据(“缺少数据”或“错误”),所以当我计算平均值时,某种类型的控制是#VALUE

我尝试使用AGGREGATE 函数来忽略错误,但我有一些标准可以选择不同控件的结果并分别计算平均值。例如:

Apple1 | length | 0.5
Apple1 | weight | 0.8
Apple1 | width  | 0.6
Apple2 | length | 0.5
Apple2 | weight | absence of data
Apple2 | width  | 0.6
Apple3 | length | error
Apple3 | weight | 0.8
Apple3 | width  | 0.6

这是我的公式:

=AGGREGATE(1,6,$C:$C,$B:$B,"length"))

嗯,我想实现就像一个AVERAGEIFS 函数但是失败了。

【问题讨论】:

  • =AVERAGEIF($B:$B, "length", $C:$C) 不行吗?
  • 谢谢@Jordan,我意识到这个问题比我问的要复杂一些......但幸运的是它已经解决了。祝你有美好的一天!

标签: excel excel-formula average


【解决方案1】:

数组公式¹可以丢弃错误和空白,但您不应该使用完整的列引用,否则您将计算许多不相关的单元格。

=AVERAGE(IF(B1:B9="Length", IF(ISNUMBER(C1:C9), C1:C9)))

这就是AVERAGEIFS function 出现之前的做法²。


¹ 数组公式需要使用 Ctrl+Shift+Enter↵ 完成。如果输入正确,Excel 会将公式用大括号括起来(例如 {})。你不用自己输入大括号。一旦正确输入第一个单元格,它们就可以像任何其他公式一样被填充或向下或向右复制。尝试将全列引用减少到更接近代表实际数据范围的范围。数组公式以对数方式消耗计算周期,因此最好将引用范围缩小到最小值。请参阅Guidelines and examples of array formulas 了解更多信息。

² 嘿!离开我的草坪!该死的孩子们(嘟嘟嘟,嘟嘟嘟……)

【讨论】:

  • 谢谢@Jeeped,你帮了我很多。在我发现问题变得更加复杂之后,还好它已经解决了。所以再次感谢,祝你有美好的一天。
猜你喜欢
  • 2020-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-19
  • 1970-01-01
  • 1970-01-01
  • 2020-03-27
相关资源
最近更新 更多