我有一个命名范围,由动态值组成,我需要在平均之前省略零。我该怎么做呢?
myRange = (1,3,4,0,4,3,5,0,1)
AVERAGE(myRange) equals 2.333
所以当我运行= AVERAGE(myRange)时,我没有得到预期的结果。
我想要删除零,以便最终得到以下内容:
noZeroes(myRange) = (1,3,4,4,3,5,1)
AVERAGE(myRange) equals 3
有什么建议吗?
答案 0 :(得分:2)
您可以在Excel 2007中使用AVERAGEIF(range,criteria,average_range)
Range
是一个或多个要平均的单元格,包括数字或名称,数组或包含数字的引用。
Criteria
是数字,表达式,单元格引用或文本形式的标准,用于定义平均哪些单元格。例如,标准可以表示为32,“32”,“> 32”,“苹果”或B4。
Average_range
是要平均的实际细胞集。如果省略,则使用范围。
=AVERAGEIF(myRange,">0") = 3
OR
=AVERAGEIF(myRange,"<>0") = 3
答案 1 :(得分:1)
使用此公式平均范围内的所有非零值:
=SUM(myRange)/COUNTIF(myRange,"<>0")