嵌套的IF(AND(ISBLANK))语句不起作用?

时间:2018-08-16 13:17:47

标签: excel

我有一个公式,如果在三列(J,R,AL)中的一列或多列中填充了一个值,则该公式应该放置“ X”。

=IF(AND(ISBLANK(J:J),ISBLANK(R:R)),ISBLANK(AL:AL))),"","x")

它给出了一个自变量错误消息,并且我知道它与括号的语法结构有关。谁能帮我找出如何进行编辑?

2 个答案:

答案 0 :(得分:0)

我不清楚您在此处的确切含义,但是括号的数量不合适。 Google表格可以立即正确检测到此错误,如果Excel也没有为您提供更清晰的错误消息,我会感到惊讶。

=IF(
  AND(
    ISBLANK(J:J),ISBLANK(R:R)
     ),
  ISBLANK(AL:AL)
   )
),"","x")   /// <--- all of this is trailing junk

也许您的目的是检查它们是否全部空白?您仍然会有太多的括号,并且需要额外的AND,但是至少您的参数数目也更有意义。

=IF(AND(AND(ISBLANK(J:J),ISBLANK(R:R)),ISBLANK(AL:AL)),"","x")

答案 1 :(得分:0)

您的公式更容易出现变化

=IF(COUNTA(J:J, R:R, AL:AL) > 0, "X", "")

公式COUNTA计算非空单元格。因此,当出现一个非空值时,这意味着这些列中的至少一列中有数据。

我认为,这是一种更为优雅的解决方案


编辑:正如注释中发现的那样,公式不应该检查整个列,而只能检查每行列中的值。因此,应该是:

(假设您的数据从J1R1AL1开始)

=IF(COUNTA(J1, R1, A1) > 0, "X", "")

这将返回所需的结果