在Excel中忽略来自命名范围的特定值

我有一个由dynamic值组成的命名范围,我需要在平均之前省略零。 我怎么去做这个?

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 

有什么build议么?

使用此公式来平均范围内的所有非零值:

 =SUM(myRange)/COUNTIF(myRange,"<>0") 

您可以在Excel 2007中使用AVERAGEIF(range,criteria,average_range)

Range是一个或多个要平均的单元格,包括数字或名称,数组或包含数字的引用。

Criteria是以数字,expression式,单元格引用或文本的forms定义哪些单元格被平均的标准。 例如,标准可以表示为32,“32”,“> 32”,“苹果”或B4。

Average_range是要平均的单元格的实际集合。 如果省略,则使用范围。

解决scheme:

=AVERAGEIF(myRange,">0") = 3

要么

=AVERAGEIF(myRange,"<>0") = 3