如何让 Excel 忽略平均值中的零值或空值?

如何让 Excel 忽略平均值中的零值或空值?

我正在制作一个电子表格来对食谱成分进行评分,计算成分质量、包装和份量准确性的平均分,然后使用这些数据来计算整个食谱的平均值。

分数是通过数据验证填写的。1=差,2=一般,3=好。AVERAGE公式在以下情况下适用:全部 字段是通过下拉列表输入的,但如果任何一行都留空,我会DIV/0在试图获取平均值(E8:E19)以及整个配方的平均值(B20)的列中收到错误。我试过AVERAGEIF,但没有成功,我被难住了。每个食谱的配料数量都不同,所以无论我有一种配料还是 20 种配料,这个函数都能正常工作,这一点很重要。

我尝试上传截图但网站不允许。

答案1

您是否尝试过使用 Excel 中的错误捕获功能?正如您所说,如果您仅对空白单元格取平均值,Excel 将提供 Div/0 的结果。

假设有 3 个人 (A、B、C) 正在评论鳄梨酱食谱。假设 csv 看起来像这样:

成分,得分 A,得分 B,得分 C

鳄梨,1,2,3

香菜,,,

青柠,1,2,3

番茄,1,2,3

计算每种成分的平均值时,请使用如下公式:=IF(ISERROR(AVERAGE('ingredient score range')=TRUE),"",AVERAGE('ingredient score range')

这个公式的作用是,如果成分得分的平均值有误,则将其留空。否则,计算平均值。

然后,您应该能够毫无问题地计算出所有配料的平均分数。您还可以选择将配料的分数设为 0,而不是空白。这当然会改变食谱的平均分数。

答案2

IFERROR是一个非常方便的功能;

  • 如果错误(计算值默认值

    是缩写

  • 如果(IS错误(计算值),默认值计算值

即,它替换默认值(通常是-错误值)来获取错误值。因此,您可能需要类似

IFERROR(AVERAGE(E8:E19), "")

当所有都是非数字时,用""您想要获得的任何内容替换。E8:E19

相关内容