Табличный редактор Эксель – очень гибкий и мощный инструмент для структурированной работы с данными. Среди большого количества его эффективных инструментов стоит отдельно выделить логические операторы, в основе использования которых лежит признание выражения истинным или ложным. Эти функции эффективно встроены в инструментарий формул и позволяют создавать гибкие условия для различных вычислений или заполнения ячеек на основе логических выражений. В данной статье будут описаны основные используемые функции, а также приведен практический пример использования логических операторов в Excel.
Содержание
Основные логические функции, используемые в Эксель
Перечень наиболее часто используемых логических операторов можно ограничить следующим набором:
- ИСТИНА;
- ЛОЖЬ;
- ЕСЛИ;
- ЕСЛИОШИБКА;
- ИЛИ;
- И;
- НЕ;
- ЕОШИБКА;
- ЕПУСТО.
В большинстве случаев их достаточно для построения сложных логических конструкций и задания условий.
Для каждого из указанных выше операторов существуют аргументы (за исключением функций ИСТИНА и ЛОЖЬ) – это могут быть как цифровые или текстовые значения, так и ссылки на данные, содержащиеся в других ячейках.
Операторы ИСТИНА и ЛОЖЬ
Функция ИСТИНА не имеет собственных аргументов и практически всегда используется, как структурный компонент для других логических выражений, так как принимает одно конкретно заданное значение.
Функция ЛОЖЬ, напротив, может принимать любые значения, не являющиеся истинными. Как и ИСТИНА, практически всегда используется, как структурный компонент для других сложных выражений.
Операторы И и ИЛИ
Синтаксис оператора И выглядит следующим образом:
=И(лог_значение1; лог_значение2; …), возможное количество используемых аргументов – от 1 до 255.
Оператор И используется в качестве элемента-связки для нескольких условий логического выражения. Важно, чтобы все аргументы оператора имели значение ИСТИНА (если в выражении их несколько), в противном случае вся логическая цепочка будет возвращать значение ЛОЖЬ.
Синтаксис оператора ИЛИ:
=ИЛИ(лог_значение1; лог_значение2; …), возможное количество используемых аргументов – от 1 до 255.
В отличие от И, функция ИЛИ будет возвращать значение ИСТИНА даже в случае, когда хотя бы один из используемых аргументов ему соответствует, а все остальные – ложные.
Оператор НЕ
Синтаксис функции НЕ: =НЕ(лог_значение).
Количество аргументов оператора НЕ – всегда один. Соответственно, результат функции (ИСТИНА/ЛОЖЬ) полностью зависит только от значения аргумента.
Операторы ЕСЛИ и ЕСЛИОШИБКА
Общий синтаксис функции ЕСЛИ представляет собой конструкцию:
=ЕСЛИ(логическое_выражение;значение_если_истина;значение_если-ложь).
Оператор ЕСЛИ используется для построения сложных развернутых логических цепочек. Суть функции – в проверке внесенного в качестве логического выражения условия. Если условие выполняется, и оно истинно, то в качестве результата функции возвращается одно выражение, если же логическое выражение ложно, то в качестве результата функции возвращается другое условие.
Синтаксис оператора ЕСЛИОШИБКА имеет вид:
=ЕСЛИОШИБКА(значение;значение_если_ошибка).
Функция проверяет истинность логического выражения для первого аргумента, и если он соблюдается, то возвращает в качестве результата его значение. Если же выражение ложно, то в качестве результата выдается значение второго аргумента, указанное в функции.
Операторы ЕОШИБКА и ЕПУСТО
Оператор ЕОШИБКА имеет следующую структуру:
=ЕОШИБКА(значение)
Он позволяет осуществить проверку корректности уже заполненных ячеек (одной или диапазона), и, если ячейка некорректно заполнена, возвращает результат ИСТИНА, в противном случае – ЛОЖЬ.
Примеры значений в некорректно заполненных ячейках:
- #ИМЯ?;
- #Н/Д;
- #ДЕЛ/0!;
- #ЧИСЛО!;
- #ЗНАЧ;
- #ПУСТО!;
- #ССЫЛКА!.
Аргумент функции – адрес конкретной ячейки или ссылка на диапазон ячеек.
Формула функции ЕПУСТО выглядит следующим образом:
=ЕПУСТО(значение)
Функционал оператора проверяет ячейку или диапазон ячеек и возвращает ИСТИНА, если в ячейке/диапазоне ячеек нет данных, и ЛОЖЬ, если в ячейке/диапазоне ячеек присутствуют данные. Аргумент функции – адрес конкретной ячейки или ссылка на диапазон ячеек.
Практический пример использования логических функций
В примере ниже попробуем частично использовать описанные выше функции для решения задачи, приближенной к реальной ситуации с расчетом премии, зависящей от определенных условий.
В качестве исходных данных – таблица со сведениями о работниках, в которой указан их пол и возраст.
Нам необходимо произвести расчет премии. Ключевые условия, от которых зависит размер премии:
- величина обычной премии, которую получат все сотрудники без исключения – 3 000 руб.;
- сотрудницам женского пола положена повышенная премия – 7 000 руб.;
- молодым сотрудникам (младше 1984 г. рождения) положена повышенная премия – 7 000 руб.;
Выполним необходимые расчеты, используя логические функции.
- Встаем в первую ячейку столбца, в которой хотим посчитать размеры премий и щелкаем кнопку “Вставить функцию” (слева от сроки формул).
- В открывшемся Мастере функций выбираем категорию “Логические”, затем в предложенном перечне операторов кликаем по строке “ЕСЛИ” и жмем OK.
- Теперь нам нужно задать аргументы функции. Так как у нас не одно, а два условия получения повышенной премии, причем нужно, чтобы выполнялось хотя бы одно из них, чтобы задать логическое выражение, воспользуемся функцией ИЛИ. Находясь в поле для ввода значения аргумента “Лог_выражение” кликаем в основной рабочей области книги на небольшую стрелку вниз, расположенную в левой верхней части окна программы, где обычно отображается адрес ячейки. В открывшемся списке функций выбираем оператор ИЛИ, если он представлен в перечне (или можно кликнуть на пункт “Другие функции” и выбрать его в новом окне Мастера функций, как мы изначально сделали для выбора оператора ЕСЛИ).
- Мы переключимся в окно аргументов функци ИЛИ. Здесь задаем наши условия получения премии в 7000 руб.:
- год рождения позже 1984 года;
- пол – женский;
- Теперь обращаем внимание на строку формул. Кликаем в ней на название первоначального оператора ЕСЛИ, чтобы переключиться в аргументы этой функции.
- Заполняем аргументы функции и щелкаем OK:
- в значении “Истина” пишем цифру 7000;
- в значении “Ложь” указываем цифру 3000;
- Результат работы логических операторов отобразится в первой ячейке столбца, которую мы выбрали. Как мы можем видеть, окончательный вид формулы выглядит следующим образом:
=ЕСЛИ(ИЛИ(C2>1984;D2="жен.");7000;3000)
.
Кстати, вместо использования Мастера функций можно было вручную составить и прописать данную формулу в требуемой ячейке. - Чтобы рассчитать премию для всех сотрудников, воспользуемся Маркером заполнения. Наведем курсор на правый нижний угол ячейки с формулой. После того, как курсор примет форму черного крестика (это и есть Маркер заполнения), зажимаем левую кнопку мыши и протягиваем выделение вниз, до последней ячейки столбца.
- Все готово. Благодаря логическим операторам мы получили заполненные данные для столбца с премиями.
Заключение
Логические операторы используются практически во всех сложных формулах, в которых значение в ячейке зависит от соблюдения одного или нескольких условий и позволяют строить гибкие конструкции, объединяя простые функции и расчеты в одной ячейке. Это дает возможность значительно сократить время на обработку данных и повысить эффективность работы, так как снимает большое количество промежуточных шагов в расчетах и вычислениях.