这个公式是不是有什么问题?

这个公式是不是有什么问题?

这个公式有什么问题:

=IF(COUNT(C8:D8)=2,C8*D8,””)

我得到了#NAME?结果单元格。我使用此公式来实现当 D8 为空白时显示空白单元格。我认为使用引号一定有问题。

答案1

我认为问题在于,按照这种写法,D8 不能为空。如果 D8 为空,公式要求您将其乘以 C8 - 而由于 D8 不是数字,因此它不知道如何处理它。在不了解您的最终目标或我回答的机器上没有 Excel 的情况下,似乎这样的公式可以实现您想要的结果:

=IF(D8="","",C8*D8)

或者

IF(COUNTBLANK(D8)=0,C8*D8,"")

答案2

该公式的唯一问题是您用于引号的字符。它不是引号(使用 CODE 检查它以查看字符代码)。如果您使用实际的引号,该公式将按预期工作。乘以空白不会产生错误,空白被视为零。COUNT 忽略空白,因此 COUNT 表达式结果为 FALSE,然后 Excel 不知道如何处理这些符号。

如果该符号是从键盘输入的,则可能还有其他原因,例如,您可能已将 Excel 设置为使用智能引号,并且它正在插入两个智能闭引号,或类似的东西。它们使用高位字符作为占位符,不被视为普通字符。

如果您注意到,公式中的符号向右倾斜。正常的引号是垂直的,就像 mael' 的答案一样。该答案中的替代公式没有任何问题,但如果您的键盘没有产生引号,它们也会失败。

答案3

#NAME?由于””公式中使用了引号,因此您收到错误!!

#NAME?当 Excel 无法识别公式中使用的任何保留字(函数名称/运算符)时,Excel 将返回错误。

因此,第一步应该是纠正命令语法(命令模式),并且公式应该像这样写,

=IF(COUNT(C8:D8)=2,C8*D8,"")

注意:

  • 此公式将C8D8if & whenCOUNT(C8:D8)返回相乘2。如果其中一个单元格或两个单元格为空白,则将得到空白!

现在考虑第二部分,我正在使用这个公式来实现当单元格D8为空白时显示空白。

因此,要测试单元格D8是否为空白,您可以使用这个,

=IF(D8<>"",C8*D8,"")

或者@mael 展示的公式。

此外,如果你想要乘以C8D8Count is 2没有单元格(C8, D8)为空白时,那么你可以使用这个,

=IF(OR(C8<>"",D8<>""),IF(COUNT(C8:D8)=2,C8*D8,""))

注意:

  • 如果任何一个单元格(C8, D8)为空白,则公式将返回 BLANK,如果两个单元格都为空白,则您将得到FALSE

或者也可以用这个。

=IF(SUMPRODUCT(--(C8:D8<>""))<>0,IF(COUNT(C8:D8)=2,C8*D8,""))

相关内容