如果值为零,则显示空白单元格的最佳方法

Abh*_*rla 3 if-statement countif google-sheets google-sheets-formula

=COUNTIFS(Orders!$T:$T,$B4)
Run Code Online (Sandbox Code Playgroud)

是一个给出 0 或 +ve 结果的代码

我在 1500 个单元格中使用它,这使得工作表被 0 填充

我想使用以下公式删除零

if(COUNTIFS(Orders!$T:$T,$B3,Orders!$F:$F,""&P$1&"*")=0,
"",
COUNTIFS(Orders!$T:$T,$B3,Orders!$F:$F,""&P$1&"*"))
Run Code Online (Sandbox Code Playgroud)

这会计算每个公式两次并增加计算时间。

我们如何在 1 个公式中执行此操作,其中如果值为 0 - 保持为空 - 否则显示答案

图 1

图 2

Pet*_*erT 7

您只需要为您的单元格范围设置数字格式。

进入菜单 Format-->Number-->More Formats-->Custom Number Format...

在顶部的输入区域中,输入以下内容: #;-#;""

格式字符串的“格式”是

(正值格式);(负值格式);(零值格式)

您可以应用颜色或逗号或其他任何内容。请参阅此链接了解详细信息


Nik*_*hua 7

我建议这种细胞功能:

=IFERROR(1/(1/COUNTIFS(Orders!$T:$T,$B4)))
Run Code Online (Sandbox Code Playgroud)

编辑:我不确定要添加什么作为解释。基本上,如果结果为 0,则用空白单元格替换复杂计算的结果,您可以将复杂函数包装在

IFERROR(1/(1/  ComplexFunction()   ))
Run Code Online (Sandbox Code Playgroud)

它的工作原理是两次取结果的倒数 (1/X),从而在所有情况下返回原始结果,除了 0 会产生 DIV0 错误。此错误随后会被 IFERROR 捕获以生成一个空白单元格。

这种方法的优点是不需要计算复杂函数两次,因此可以显着提高速度/可读性,并且不会像自定义数字格式那样欺骗输出,如果使用此单元格,这可能很重要在进一步的功能中。