Редактор электронных таблиц Excel — очень гибкий и мощный инструмент для управления структурированными данными. Среди большого количества его эффективных инструментов стоит выделить логические операторы, в основе которых лежит распознавание выражения как истинного или ложного. Эти функции эффективно интегрированы в панель инструментов формул и позволяют создавать гибкие условия для различных вычислений или заполнения ячеек на основе логических выражений. В этой статье будут описаны основные используемые функции, а также практический пример использования логических операторов в Excel.
Основные логические функции, используемые в Эксель
Список наиболее часто используемых логических операторов можно ограничить следующим набором:
- НАСТОЯЩИЙ;
- ВРУЩИЙ;
- СЕБЯ;
- ЕСЛИОШИБКА;
- ИЛИ;
- А ТАКЖЕ;
- НЕТ;
- ISERROR;
- ПУСТО.
В большинстве случаев их достаточно для построения сложных логических структур и задания условий.
Для каждого из перечисленных выше операторов есть аргументы (кроме функций ИСТИНА и ЛОЖЬ): они могут быть числовыми или текстовыми значениями или ссылками на данные, содержащиеся в других ячейках.
Операторы ИСТИНА и ЛОЖЬ
Функция ИСТИНА не имеет собственных аргументов и почти всегда используется как структурный компонент для других логических выражений, поскольку принимает определенное значение.
И наоборот, функция ЛОЖЬ может принимать любое неверное значение. Как и TRUE, он почти всегда используется как структурный компонент для других сложных выражений.
Операторы И и ИЛИ
Синтаксис оператора AND следующий:
= И (log_value1; log_value2;…), возможное количество используемых аргументов составляет от 1 до 255.
Оператор AND используется как связующий элемент для нескольких условий логического выражения. Важно, чтобы все аргументы оператора были ИСТИНА (если их несколько в выражении), иначе вся логическая цепочка вернет ЛОЖЬ.
Синтаксис оператора ИЛИ:
= OR (log_value1; log_value2;…), возможное количество используемых аргументов составляет от 1 до 255.
В отличие от И, функция ИЛИ вернет ИСТИНА, даже если хотя бы один из используемых аргументов совпадает, а все остальные — ложь.
Оператор НЕ
Синтаксис функции НЕ: = НЕ (логическое_значение).
Число аргументов для оператора НЕ всегда равно одному. Следовательно, результат функции (ИСТИНА / ЛОЖЬ) полностью зависит от значения аргумента.
Операторы ЕСЛИ и ЕСЛИОШИБКА
Общий синтаксис функции ЕСЛИ:
= ЕСЛИ (логическое_выражение; значение_если_ истинно; значение_если-ложь).
Оператор IF используется для создания сложных расширенных логических цепочек. Суть функции — проверить условие, введенное как логическое выражение. Если условие выполнено и оно истинно, выражение возвращается как результат функции, если логическое выражение ложно, в качестве результата функции возвращается другое условие.
Синтаксис оператора ЕСЛИОШИБКА:
= ЕСЛИ ОШИБКА (значение; значение_если_ошибка).
Функция проверяет истинность логического выражения для первого аргумента и возвращает его значение в качестве результата, если оно удовлетворено. Если выражение ложно, в качестве результата возвращается значение второго аргумента, указанного в функции.
Операторы ЕОШИБКА и ЕПУСТО
Оператор ISERROR имеет следующую структуру:
= ISERROR (значение)
Позволяет проверить правильность уже заполненных ячеек (одной или диапазона), и при неправильном заполнении ячейки возвращает результат ИСТИНА, в противном случае — ЛОЖЬ.
Примеры значений в неправильно заполненных ячейках:
- #ИМЯ?;
- # N / A;
- # DIV / 0!;
- #КОЛИЧЕСТВО!;
- #ЦЕНИТЬ;
- # ПУСТОЙ!;
- #СВЯЗЬ!.
Аргумент функции — это адрес конкретной ячейки или ссылка на диапазон ячеек.
Формула функции ISBLANK выглядит следующим образом:
= БАЛАНС (значение)
Функциональность оператора проверяет ячейку или диапазон ячеек и возвращает ИСТИНА, если в ячейке / диапазоне ячеек нет данных, и ЛОЖЬ, если в ячейке / диапазоне ячеек есть данные. Аргумент функции — это адрес конкретной ячейки или ссылка на диапазон ячеек.
Практический пример использования логических функций
В приведенном ниже примере мы попытаемся частично использовать описанные выше функции для решения проблемы, близкой к реальной ситуации с расчетом премии, в зависимости от определенных условий.
В качестве исходных данных: таблица с информацией о сотрудниках с указанием их пола и возраста.
Нам нужно рассчитать премию. Ключевые условия, от которых зависит размер премии:
- размер обычного бонуса, который получат все сотрудники без исключения, — 3000 рублей.;
- работницы-женщины имеют право на более высокую премию — 7000 руб.;
- молодые сотрудники (1984 г.р.) имеют право на повышенную премию в размере 7000 руб.;
Выполняем необходимые расчеты с использованием логических функций.
- Мы находимся в первой ячейке столбца, в котором хотим рассчитать вознаграждение, и нажимаем кнопку «Вставить функцию» (слева от временной шкалы формулы).
- В открывшемся мастере выберите категорию «Логические», затем в списке предложенных операторов щелкните строку «ЕСЛИ» и нажмите ОК.
- Теперь нам нужно установить аргументы для функции. Поскольку у нас есть не одно, а два условия для получения повышенной премии, и необходимо, чтобы хотя бы одно из них было выполнено, для задания логического выражения воспользуемся функцией ИЛИ. Находясь в поле для ввода значения аргумента «Log_expression», щелкните в основной рабочей области книги на маленькую стрелку вниз, расположенную в верхней левой части окна программы, где обычно отображается адрес ячейки. В открывшемся списке функций выберите оператор ИЛИ, если он присутствует в списке (или вы можете нажать на пункт «Другие функции» и выбрать его в новом окне мастера, как мы делали изначально, чтобы выбрать оператор ЕСЛИ).
- Перейдем в окно аргументов функции ИЛИ. Здесь мы устанавливаем свои условия для получения приза 7000 руб.:
- родился после 1984 г;
- женский пол;
- Теперь обратим внимание на строку формул. Щелкните в нем имя исходного оператора IF, чтобы перейти к аргументам этой функции.
- Заполните аргументы функции и нажмите ОК:
- в значении «Истина» пишем число 7000;
- в значении «Ложь» указываем число 3000;
- Результат работы логических операторов отобразится в первой ячейке выбранной нами колонки. Как видим, окончательный вид формулы выглядит так:
= SE (ИЛИ (C2> 1984; D2 = «женский»); 7000; 3000).
Кстати, вместо использования функции мастера можно было вручную составить и записать эту формулу в нужную ячейку. - Для расчета бонуса для всех сотрудников мы воспользуемся маркером заполнения. Наведите указатель мыши на правый нижний угол ячейки с формулой. После того, как курсор изменится на черный крест (это индикатор заполнения), удерживая левую кнопку мыши, перетащите выделение в последнюю ячейку столбца.
- Все готово. Благодаря логическим операторам мы получили скомпилированные данные для столбца премиум-класса.
Заключение
Логические операторы используются почти во всех сложных формулах, где значение в ячейке зависит от того, выполняется ли одно или несколько условий, и позволяет создавать гибкие конструкции, комбинируя простые функции и вычисления в одной ячейке. Это позволяет значительно сократить время обработки данных и повысить эффективность работы, так как устраняет большое количество промежуточных шагов в расчетах и расчетах.