【发布时间】:2018-12-10 18:37:53
【问题描述】:
我很难找到一个公式来查找一行中的前 4 个都大于 0 的数字,如果小于 4 个大于 0 的数字,它会找到这些数字的平均值。 示例:
A B C D E F G H
1 2 0 0 4 0 0 0
我希望公式看到只有 3 个大于 0 的数字,并在不考虑任何 0 的情况下找到这 3 个数字的平均值。
我认为=average(large(isnumber(A1:H1),{1,2,3,4}) 会起作用,但事实并非如此。任何帮助将不胜感激。
【问题讨论】:
-
您对使用的 excel 版本有限制吗?使用
AVERAGEIF或AVERAGEIFS函数可以使这类事情变得更容易。 -
@DavidS 据我所知,没有可靠的方法可以将平均值限制为不是
0的前 4 个值,AVERAGEIF或AVERAGEIFS。如果有,请用一个工作示例回答问题。今天我很想学点新东西。 -
@ScottCraner 您的回答似乎是最好的。使用
SUMPRODUCT可以避免使用数组函数,但是使用 sum/count 方法会增加很多错误的可能性。我不认为我会找到更好的选择。 -
@DavidS SUMPRODUCT 是一个数组公式。它是原生数组公式,因此不需要 Ctrl-Shift-Enter,但它仍然是一个数组公式。
标签: excel excel-formula average