Excel застрял на IF ИЛИ ИЛИ - PullRequest
0 голосов
/ 02 октября 2018

Я пытался понять это около часа, но просто не могу понять, как это работает, несмотря на исследование того, как использовать IF и ИЛИ в Google.

В основном то, что я пытаюсь понятьвыясните, как это отобразить:

Если значение в E4 больше, чем $ A $ 5, и равно или больше, чем $ A $ 9, то E4 / C3 * 100 НО, если E4 больше, чем $ A $ 5, Именьше чем $ A $ 9, ТО E4 / C3 * 100 С символом МИНУС (-) перед отображаемым результатом.

Я все еще учусь использовать Excel, так что это немного сложнее для меня.Может кто-нибудь объяснить это, пожалуйста?

Ответы [ 3 ]

0 голосов
/ 02 октября 2018

Когда вам нужны сложные операторы IF-THEN, вы автоматически получите то, что мы называем «вложенными операторами IF», потому что Excel так забавен.Вот уравнение, в котором вы нуждаетесь:

=IF(AND(E4>$A$5,E4>=A9),E4/C3*100,IF(AND(E4>$A$5,E4<$A$9),-E4/C3*100,"HELP"))

Первый IF проверяет ваше первое уравнение, и если оно не выполняется, то мы используем часть «Если ложно» первого оператора IF для разработки нашего второго оператора IF.Обратите внимание, у вас есть 3 возможных результата, но вы описали только два.Продолжайте вкладывать операторы IF, пока не будут учтены все сценарии.Смотрите мой скриншот!enter image description here

0 голосов
/ 02 октября 2018

И принимает ряд условий и возвращает ИСТИНА, если все условия равны ИСТИНА.

В вашей формуле есть два AND оператора:

Если значение в E4 больше, чем $ A $ 5, и равно или больше, чем $ A $ 9

Это записывается как AND($E$4>$A$5,$E$4>=$A$9) и возвращает TRUE или FALSE.

Ваше второе AND утверждение:

, если E4 больше, чем $ A $ 5, и меньше, чем $ A $ 9

Это записывается какAND($E$4>$A$5,$E$4<$A$9) и вернет TRUE или FALSE.


Функция IF вернет один из двух ответов, основываясь на сравнении, возвращающем TRUE или FALSE (например, операторы AND).

Таким образом, функция IF имеет вид =IF(Comparison, Result if TRUE, Result if FALSE).


Для сравнения необходимы две функции IF, поэтому FALSE возвращается, если E4 меньше, чем A5.

=IF(Comparison_1, Result if TRUE, IF(Comparison_2, Result if TRUE, Result if FALSE))

При использовании ваших условий это будет записано как (замените последний FALSE на то, что вы хотите, если не выполняются условия):

=IF(AND($E$4>$A$5,$E$4>=$A$9),$E$4/$C$3*100,IF(AND($E$4>$A$5,$E$4<$A$9),$E$4/$C$3*100, FALSE))
0 голосов
/ 02 октября 2018
=IF(AND(E4>$A$5,E4>=$A$9),
     E4/C3*100,
     IF(AND(E4>$A$5,E4<$A$9),
         E4/C3*100))

Это утверждение IF() соответствует точной логике, описанной вами в вашем вопросе.

Поскольку вы ищете одинаковый результат для любого сценария, хотя я бы подошел к этому с одним IF():

IF(AND(E4>$A$5,OR(E4>=$A$9,E4<$A$9)),E4/C3*100) - поскольку оба результата просто хотят, чтобы E4 было> $ A $ 5, нам не нужно перечислять этот аргумент дважды

Но теперь мы можем видеть, что второй аргумент всегда будетправда, так что вы на самом деле только ищете:

IF(E4>$A$5,E4/C3*100)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...