平均来自5个单元格,如果不是空白或零

Mat*_*anb 10 excel average zero

我需要计算5个单元格的平均值,但如果单元格为空或零,则应忽略该值.

我无法使用它

=AVERAGEIFS(A10;B13;C5;D6;D8;"<>0")
Run Code Online (Sandbox Code Playgroud)

有谁知道计算这个的正确方法?

Wal*_*lly 20

您正在寻找"Averageif": Excel显示averageif

具体来说,您希望使用包含可能空白的范围,然后对于标准使用"> 0"

=AVERAGEIF(C1:C5,">0")
Run Code Online (Sandbox Code Playgroud)

更新:非连续范围(并非全部工作)

在这个答案的评论中是关于本地化的讨论.我的语言环境是美国(Excel 2010),所以传递给函数的值之间的分隔符是逗号,

可以在非连续范围上执行averageif函数:

=AVERAGEIF(B1:B1:B3:B3:B5:B5:B7:B7,">0")
Run Code Online (Sandbox Code Playgroud)

Excel 2010逗号分隔的averageif

对于您的语言环境,您可能需要调整分隔符,但关键是选择单个单元格,对于单个单元格C1和D4使用格式"C1:C1:D4:D4".引擎必须以对的形式解析引用.


bar*_*ini 6

对于非连续值的平均值,不包括任何零,请尝试此公式

=IFERROR(SUM(A10;B13;C5;D6;D8)/((A10<>0)+(B13<>0)+(C5<>0)+(D6<>0)+(D8<>0));0)

或假设没有负值,你可以使用它

=IFERROR(SUM(A10;B13;C5;D6;D8)/INDEX(FREQUENCY((A10;B13;C5;D6;D8);0);2);0)

我根据问题使用了分号分隔符,如果您的区域设置需要,请更改为逗号