Answers:
使用AVERAGEIF
或AVERAGEIFS
代替AVERAGE
:
排除0
:
=AVERAGEIF(A1:A50,">0")
要排除空白单元格:
=AVERAGEIF(A1:A50,"<>""")
要排除0
并空白单元格:
=AVERAGEIFS(A1:A50,A1:A50,">0",A1:A50,"<>""")
注意:
AVERAGEIF
并AVERAGEIFS
在Excel 2007中引入Veronica知道如何使用该
AVERAGE
函数来确定一系列值的平均值。但是,她希望根据该范围内的非零值确定平均值。最适合此目的的工作表功能是使用
AVERAGEIF
。您可以通过以下方式使用它:=AVERAGEIF(A1:A50,">0")
该函数平均仅包含那些值大于零的像元。如果还要排除空白单元格,则应使用该
AVERAGEIFS
功能。此功能的不同之处AVERAGEIF
在于,它允许您指定多个条件以指示要平均的像元。=AVERAGEIFS(A1:A50,A1:A50,">0",A1:A50,"<>""")
当然,如果您想解决“老派”问题(不使用
AVERAGEIF
或AVERAGEIFS
),则有几种方法可以进行。首先是要记住如何计算平均值。它定义为值范围的总和除以该范围中的项目数。因此,您可以通过简单地确保分母(被您除以的数字)不包含任何零值来计算出排他性平均值。例如:=SUM(A1:A50)/COUNTIF(A1:A50,"<>0")
这种方法使用该
COUNTIF
函数来确定范围内(A1:A50)
不包含零的像元数。如果此范围不仅包含零,还包含空白单元格,并且您不希望将空白单元格计入结果,则需要使用更复杂的公式:=SUM(A1:A50)/(COUNTIF(A1:A50,"<>0")-COUNTBLANK(A1:A50)- (COUNTA(A1:A50)-COUNT(A1:A50)))
该
COUNTIF
函数对未显式求值为0的单元格进行计数,但是它将对空白和文本单元格进行计数。该COUNTBLANK
术语针对空白单元格以及它们之间的差异进行调整,COUNTA
并COUNT
调整包含文本的单元格的总数。当然,您也可以使用数组公式进行计算:
=AVERAGE(IF(A1:A50<>0,A1:A50))
请记住,需要使用组合Ctrl+ Shift+ 输入数组公式Enter。此数组公式还排除空格或包含文本的单元格。
总而言之,使用
AVERAGEIF
或AVERAGEIFS
函数更加容易。
来源排除零值的平均值