我有一列average(K23:M23)
从通过单元格为空#DIV/0!
时开始。最好我只想对包含非零、非空白值的单元格进行平均。我认为可以使用查询命令:K23
M23
https://docs.google.com/support/bin/answer.py?hl=en&answer=159999
但是他们的例子对我没有帮助。
我有一列average(K23:M23)
从通过单元格为空#DIV/0!
时开始。最好我只想对包含非零、非空白值的单元格进行平均。我认为可以使用查询命令:K23
M23
https://docs.google.com/support/bin/answer.py?hl=en&answer=159999
但是他们的例子对我没有帮助。
用 包裹你的公式IFERROR
。
=IFERROR(yourformula)
您可以使用 IF 语句检查引用的单元格并返回一个结果为零或空白,否则返回您的公式结果。
一个简单的例子:
=IF(B1=0;"";A1/B1)
如果除数 B1 为空白或零,这将返回一个空字符串;否则返回 A1 除以 B1 的结果。
在运行平均值的情况下,您可以检查您的数据集是否具有值:
=IF(SUM(K23:M23)=0;"";AVERAGE(K23:M23))
如果没有输入任何内容或只有零,则返回一个空字符串;如果存在一个或多个值,您将获得平均值。
将现有公式包装在 IFERROR 中将无法实现:
包含非零、非空白值的单元格的平均值。
我建议尝试:
=if(ArrayFormula(isnumber(K23:M23)),AVERAGEIF(K23:M23,"<>0"),"")
由于您还明确要求处理尚未填写的列,并且我假设如果他们有一个单词而不是数字,我也不想惹他们,您可能会考虑这个:
=If(IsNumber(K23), If(K23 > 0, ........., 0), 0)
这只是说......如果K23是一个数字;如果该数字大于零;然后做点什么......否则,返回零。
在............中,您可以将除法方程放在那里,例如A1/K23
,您可以放心 K23 是一个大于零的数字。
检查列是否具有文本格式。将数字格式应用于您在平均函数中使用的单元格。