-1

Я искал в Интернете, чтобы посмотреть, возможно ли это:

IF(логический тест; истинное значение; ложное значение)

Это то, что я пытаюсь сделать, например,

A2 =IF( B2 = 20 ; "True" и дать значение C2 "Closed" ; False )

Как я могу это сделать?

2 ответа2

2

Нет, вы не можете присвоить значение другой ячейке без VBA.

Вы могли бы сделать два, если формулы как:

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
0

Для дальнейшего использования и, возможно, для тех, кто ищет ответ в будущем, вы можете сделать это с помощью одной формулы, если ячейки расположены рядом. Например, если мы поместили TRUE/FALSE в C2 и закрыли в D2.
Вы делаете это с формулой массива ... Для этого вам необходимо:

  1. Выберите ОБА ячейки C2 и D2
  2. Введите формулу =IF($B2=20,{TRUE,"Closed"},{FALSE,""}) и используйте Ctrl+Shift+Enter, чтобы установить ее

Таким образом, IF возвращает массив значений (либо TRUE,"Closed" либо FALSE,""), и, введя его как формулу массива с двумя выбранными ячейками, Excel заполнит оба.

К сожалению, вы не можете сделать такой подход, когда ячейки разделены, как в A2/C2, как в вашем случае :-(

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .