Как в excel написать или
Перейти к содержимому

Как в excel написать или

Функция ИЛИ() в EXCEL

history 11 апреля 2013 г.
    Группы статей

  • стандартные функции

Синтаксис функции

ИЛИ(логическое_значение1; [логическое_значение2]; . )

логическое_значение1 — любое значение или выражение, принимающее значения ИСТИНА или ЛОЖЬ. =ИЛИ(A1>100;A2>100) Т.е. если хотя бы в одной ячейке (в A1 или A2 ) содержится значение больше 100, то формула вернет ИСТИНА, а если в обоих ячейках значения =ИЛИ(ЛОЖЬ;ЛОЖЬ) вернет ЛОЖЬ, а формулы =ИЛИ(ИСТИНА;ЛОЖЬ) или =ИЛИ(ЛОЖЬ;ИСТИНА) или =И(ИСТИНА;ИСТИНА) или =И(ЛОЖЬ;ЛОЖЬ;ИСТИНА) вернут ИСТИНА.

Функция воспринимает от 1 до 255 проверяемых условий. Понятно, что 1 значение использовать бессмысленно, для этого есть функция ЕСЛИ() . Чаще всего функцией ИЛИ() на истинность проверяется 2-5 условий.

Совместное использование с функцией ЕСЛИ()

Сама по себе функция ИЛИ() имеет ограниченное использование, т.к. она может вернуть только значения ИСТИНА или ЛОЖЬ, чаще всего ее используют вместе с функцией ЕСЛИ() : =ЕСЛИ(ИЛИ(A1>100;A2>100);"Бюджет превышен";"В рамках бюджета")

Т.е. если хотя бы в одной ячейке (в A1 или A2 ) содержится значение больше 100, то выводится Бюджет превышен , если в обоих ячейках значения И()

Функция И() также может вернуть только значения ИСТИНА или ЛОЖЬ, но, в отличие от ИЛИ() , она возвращает ИСТИНА, только если все ее условия истинны. Чтобы сравнить эти функции составим, так называемую таблицу истинности для И() и ИЛИ() .

Эквивалентность функции ИЛИ() операции сложения +

В математических вычислениях EXCEL интерпретирует значение ЛОЖЬ как 0, а ИСТИНА как 1. В этом легко убедиться записав формулы =ИСТИНА+0 и =ЛОЖЬ+0

Следствием этого является возможность альтернативной записи формулы =ИЛИ(A1>100;A2>100) в виде =(A1>100)+(A2>100) Значение второй формулы будет =0 (ЛОЖЬ), только если оба аргумента ложны, т.е. равны 0. Только сложение 2-х нулей даст 0 (ЛОЖЬ), что совпадает с определением функции ИЛИ() .

Эквивалентность функции ИЛИ() операции сложения + часто используется в формулах с Условием ИЛИ, например, для того чтобы сложить только те значения, которые равны 5 ИЛИ равны 10: =СУММПРОИЗВ((A1:A10=5)+(A1:A10=10)*(A1:A10))

Проверка множества однотипных условий

Предположим, что необходимо сравнить некое контрольное значение (в ячейке B6 ) с тестовыми значениями из диапазона A6:A9 . Если контрольное значение совпадает хотя бы с одним из тестовых, то формула должна вернуть ИСТИНА. Можно, конечно записать формулу =ИЛИ(A6=B6;A7=B6;A8=B6;A9=B6) но существует более компактная формула, правда которую нужно ввести как формулу массива (см. файл примера ): =ИЛИ(B6=A6:A9) (для ввода формулы в ячейку вместо ENTER нужно нажать CTRL+SHIFT+ENTER )

Вместо диапазона с тестовыми значениями можно также использовать константу массива : =ИЛИ(A18:A21><1:2:3:4>)

В случае, если требуется организовать попарное сравнение списков , то можно записать следующую формулу: =ИЛИ(A18:A21>=B18:B21)

Если хотя бы одно значение из Списка 1 больше или равно (>=) соответствующего значения из Списка 2, то формула вернет ИСТИНА.

Использование ЕСЛИ с функциями И, ИЛИ и НЕ

Функция ЕСЛИ позволяет выполнять логические сравнения значений и ожидаемых результатов. Она проверяет условие и в зависимости от его истинности возвращает результат.

=ЕСЛИ(это истинно, то сделать это, в противном случае сделать что-то еще)

Но что делать, если необходимо проверить несколько условий, где, допустим, все условия должны иметь значение ИСТИНА или ЛОЖЬ ( И), только одно условие должно иметь такое значение ( ИЛИ) или вы хотите убедиться, что данные НЕ соответствуют условию? Эти три функции можно использовать самостоятельно, но они намного чаще встречаются в сочетании с функцией ЕСЛИ.

Используйте функцию ЕСЛИ вместе с функциями И, ИЛИ и НЕ, чтобы оценивать несколько условий.

ЕСЛИ(И()): ЕСЛИ(И(лог_выражение1; [лог_выражение2]; …), значение_если_истина; [значение_если_ложь]))

ЕСЛИ(ИЛИ()): ЕСЛИ(ИЛИ(лог_выражение1; [лог_выражение2]; …), значение_если_истина; [значение_если_ложь]))

ЕСЛИ(НЕ()): ЕСЛИ(НЕ(лог_выражение1), значение_если_истина; [значение_если_ложь]))

Условие, которое нужно проверить.

Значение, которое должно возвращаться, если лог_выражение имеет значение ИСТИНА.

Значение, которое должно возвращаться, если лог_выражение имеет значение ЛОЖЬ.

Общие сведения об использовании этих функций по отдельности см. в следующих статьях: И, ИЛИ, НЕ. При сочетании с оператором ЕСЛИ они расшифровываются следующим образом:

И: =ЕСЛИ(И(условие; другое условие); значение, если ИСТИНА; значение, если ЛОЖЬ)

ИЛИ: =ЕСЛИ(ИЛИ(условие; другое условие); значение, если ИСТИНА; значение, если ЛОЖЬ)

НЕ: =ЕСЛИ(НЕ(условие); значение, если ИСТИНА; значение, если ЛОЖЬ)

Примеры

Ниже приведены примеры распространенных случаев использования вложенных операторов ЕСЛИ(И()), ЕСЛИ(ИЛИ()) и ЕСЛИ(НЕ()). Функции И и ИЛИ поддерживают до 255 отдельных условий, но рекомендуется использовать только несколько условий, так как формулы с большой степенью вложенности сложно создавать, тестировать и изменять. У функции НЕ может быть только одно условие.

Ниже приведены формулы с расшифровкой их логики.

=ЕСЛИ(И(A2>0;B2 0;B4 50);ИСТИНА;ЛОЖЬ)

Если A6 (25) НЕ больше 50, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае значение не больше чем 50, поэтому формула возвращает значение ИСТИНА.

Если значение A7 ("синий") НЕ равно "красный", возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ.

Обратите внимание, что во всех примерах есть закрывающая скобка после условий. Аргументы ИСТИНА и ЛОЖЬ относятся ко внешнему оператору ЕСЛИ. Кроме того, вы можете использовать текстовые или числовые значения вместо значений ИСТИНА и ЛОЖЬ, которые возвращаются в примерах.

Вот несколько примеров использования операторов И, ИЛИ и НЕ для оценки дат.

Примеры использования функции ЕСЛИ с И, ИЛИ и НЕ для оценки дат

Ниже приведены формулы с расшифровкой их логики.

Если A2 больше B2, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае 12.03.14 больше чем 01.01.14, поэтому формула возвращает значение ИСТИНА.

=ЕСЛИ(И(A3>B2;A3 B2;A4 B2);ИСТИНА;ЛОЖЬ)

Если A5 не больше B2, возвращается значение ИСТИНА, в противном случае возвращается значение ЛОЖЬ. В этом случае A5 больше B2, поэтому формула возвращает значение ЛОЖЬ.

Использование операторов И, ИЛИ и НЕ с условным форматированием

Вы также можете использовать операторы И, ИЛИ и НЕ в формулах условного форматирования. При этом вы можете опустить функцию ЕСЛИ.

На вкладке Главная выберите Условное форматирование > Создать правило. Затем выберите параметр Использовать формулу для определения форматируемых ячеек, введите формулу и примените формат.

Диалоговое окно "Изменить правило" с параметром "Формула"" xmlns:AntiXSS="urn:AntiXSSExtensions" />

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

Примеры использования операторов И, ИЛИ и НЕ с условным форматированием

Если A2 больше B2, отформатировать ячейку, в противном случае не выполнять никаких действий.

=И(A3>B2;A3 B2;A4 B2)

Если A5 НЕ больше B2, отформатировать ячейку, в противном случае не выполнять никаких действий. В этом случае A5 больше B2, поэтому формула возвращает значение ЛОЖЬ. Если изменить формулу на =НЕ(B2>A5), она вернет значение ИСТИНА, а ячейка будет отформатирована.

Примечание: Распространенная ошибка — ввод формулы в условное форматирование без знака "равно" (=). При этом вы увидите, что в диалоговом оке Условное форматирование в формулу будут добавлены знаки "равно" и кавычка: ="ИЛИ(A4>B2;A4

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *