5

Короче говоря, если кто-то хотел сделать переключение IF

а) если А <0,5 ... B = 10.
б) если А> = 0,5 ... B = 15
в) если А> 1,0 ... B = 20

Как можно это сделать?

8 ответов8

6

Вы можете вкладывать выражения "если", как это:

=IF(A1<0.5,10,IF(AND(A1>=0.5,A1<=1),15,IF(A1>1,20,"Something else")))

(Я добавил A1 <= 1 в противном случае, потому что A> 1.0 подразумевает A также> = 0.5)

6

Это будет работать как функция ПЕРЕКЛЮЧАТЕЛЯ:

=CHOOSE(IF(A1<0.5,1,IF(AND(A1>=0.5,A1<=1),2,3)),10,15,20)

Но это внутренне делает Nested IF.

Лучший способ использовать 3-х позиционный переключатель:

=IF(A1<0.5,10,IF(AND(A1>=0.5,A1<=1),15,20))
5

Если это самый простой способ сделать это.

Более гибкий метод расчета - использовать в Excel значение True = 1. Предполагая, что значение находится в A1:

=((A1<0.5)*10)+((A1>=0.5)*15)+((A1>1)*20)

Это позволит вам добавить любое количество условий и избавит вас от вложенных IF.

Это работает, потому что в каждой группе оценка представляет собой логическую функцию, возвращающую True или False, то есть (A1<0.5) вернет True если A1 меньше 0.5 . Excel использует значение 1, когда True используется в арифметической функции.

Приведенный выше пример не совсем корректен, некоторые числа будут генерировать True для двух разных групп. Средней группе потребуется функция AND() для ограничения, например:

AND(A1>=0.5,A1<=1)
2

Посмотрите здесь, если эта ссылка помогает

Типичная функция переключения будет выглядеть следующим образом: =switch(condition, outcome1, outcome2, outcome3...), for eg, =switch(3,"good","average","poor") вернет "плохой" при использовании ,

2

Самое короткое решение должно быть:

=IF(A1<0.5,10,IF(A1<=1,15,20))

Из-за первой части AND во второй части не требуется.

2

Функция переключения теперь доступна в Excel 2016 / Office 365

SWITCH(выражение, значение1, результат1, [значение по умолчанию или значение2, результат2],… [значение по умолчанию или значение3, результат3])

example:
=SWITCH(A1,0,"FALSE",-1,"TRUE","SORT OF")

Microsoft -Office Support

1

Для установки значения на основе входной строки, т.е. установите значение ячейки = 2, если C5 = "Вероятно", ИЛИ установите значение ячейки = 3, если C5 = маловероятно, ИЛИ установите значение ячейки = 2, если C5 = "Довольно вероятно". тогда формула будет такой:

IF(C5 = "Вероятно", 1,(IF(C5 = "Вероятно, 3",(IF(C5 = "Довольно вероятно", 2)))))

0

В Excel нет функции переключения. На ваш вопрос, вложенные ifs являются лучшим решением.

Я нашел эту страницу в поисках настоящей функции переключения в Excel. Хотя он не существует, вы можете эмулировать эту функцию с помощью таблицы поиска и функции VLOOKUP . Вот пример ...

Допустим, мы хотим рассчитать промежуточную сумму для каждого элемента в заказе. Сначала мы создаем таблицу поиска, скажем, это в ячейках с A1 по B4:

Product  Price
Candy    1
Apples   15
Chicken  21

Теперь предположим, что у нас есть квитанция от поставщика по вызовам от D1 до E5:

Product  Quantity
Candy          25
Apples         15
Chicken        10
-----------------
Tax           $37
Total        $497

Мы можем добавить промежуточный столбец, используя эту формулу в ячейке F2:

=E2 * VLOOKUP(D2, $A$2:$B$4, 2, FALSE)

Это возьмет количество и умножит его на цену этого продукта, создав промежуточный итог.

Чтобы объяснить, что функция VLOOKUP работает немного дальше, мы ищем название продукта (D2) в нашей справочной таблице цен ($A$2:$B$4), затем выбираем второй столбец (2), и нам нужно только точные совпадения (FALSE).

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