Общая формула
=REPT("message",logical test)
Резюме
Чтобы отобразить условное сообщение без функции IF, вы можете использовать логическую логику и функцию REPT. В показанном примере формула в D5 (скопированная):
=REPT("low",C5<100)
Если значение в столбце C меньше 100, формула возвращает «низкий». Если нет, формула возвращает пустую строку (""), которая выглядит как пустая ячейка.
Объяснение
В этой формуле используется логическая логика для вывода условного сообщения. Если значение в столбце C меньше 100, формула возвращает «низкий». Если нет, формула возвращает пустую строку («»).
Логическая логика - это метод обработки значений ИСТИНА и ЛОЖЬ, таких как 1 и 0. В ячейке C5 формула вычисляется следующим образом:
=REPT("low",C5<100) =REPT("low",TRUE) =REPT("low",1) ="low"
Другими словами, если C5 <100, вывести «низкий» 1 раз. В ячейке C6 формула вычисляется следующим образом:
=REPT("low",C6<100) =REPT("low",FALSE) =REPT("low",0) =""
Другими словами, если C6 <100 - ЛОЖЬ, вывести "низкий" ноль раз.
Альтернатива функции ЕСЛИ
Подобные условные сообщения обычно обрабатываются функцией IF. С IF эквивалентная формула:
=IF(C5<100,"low","")
Обе формулы возвращают точно такой же результат, но версия REPT немного проще.
Расширяя логику
Логическая логика может быть расширена с помощью простых математических операций для обработки более сложных сценариев. Вкратце, логика И может быть выражена с помощью умножения (*) ИЛИ логика может быть выражена с помощью сложения (+). Например, чтобы вернуть «низкий» только тогда, когда (count <100) AND (day = Monday), мы можем использовать такую логическую логику:
=REPT("low",(C5<100)*(B5="Monday"))
Эквивалентная формула IF:
=IF(C5<100,IF(B5="Monday","low",""),"")
или, немного упрощая с И:
=IF(AND(C5<100,B5="Monday"),"low","")
Приведение ИСТИНА и ЛОЖЬ к 1 и нулю
При использовании логической логики вам иногда нужно заставить Excel приводить TRUE и FALSE к 1 и нулю. Простой способ сделать это - использовать двойное отрицание (-).