Excel 可以用一个 if 公式填充两个单元格

Excel 可以用一个 if 公式填充两个单元格

我已经在互联网上搜索过这是否可能:

IF(逻辑测试; 真值; 假值)

这就是我尝试做的

A2=IF( B2 = 20 ; "True"并赋予 C2 值“已关闭”; False )

我怎样才能做到这一点?

答案1

不,没有 VBA 您无法将值分配给另一个单元格。

您可以执行两个 if 公式,例如:

A2=IF(B2=20,"True","False")
C2=IF(A2="True","Closed","")

对于 VBA 你可以这样做

sub test()
  For each c in range("B:B")
    If c = 20 then
      c.offset(-1,) = "True"
      c.offset(1,) = "Closed"
    End if
  Next c
end sub

答案2

为了将来参考,也许也为了将来其他人寻找答案,如果单元格相邻,您可以使用单个公式来完成。例如,如果我们将TRUE/FALSE放在 C2 中,将 Closed 放在 D2 中。
您可以使用数组公式执行此操作...为此,您需要:

  1. 选择单元格 C2 和 D2
  2. 输入公式=IF($B2=20,{TRUE,"Closed"},{FALSE,""}),使用++Ctrl进行设置ShiftEnter

这样,IF 将返回一个值数组(或TRUE,"Closed"FALSE,"",通过将其作为数组公式输入并选择两个单元格,Excel 将填充这两个值。

不幸的是,当单元格分裂时,您无法采用这种方法,就像您的情况中的 A2/C2 一样 :-(

相关内容