这个公式有什么问题:
=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,"")
注意:
- 此公式将
C8
与D8
if & whenCOUNT(C8:D8)
返回相乘2
。如果其中一个单元格或两个单元格为空白,则将得到空白!
现在考虑第二部分,我正在使用这个公式来实现当单元格D8
为空白时显示空白。
因此,要测试单元格D8
是否为空白,您可以使用这个,
=IF(D8<>"",C8*D8,"")
或者@mael 展示的公式。
此外,如果你想要乘以C8
,D8
当Count 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,""))