AND и OR в Google Таблицах — логические функции

AND и OR — базовые логические функции Google Таблиц, которые возвращают TRUE или FALSE. AND требует, чтобы все условия были верны; OR — чтобы было верно хотя бы одно. Их используют отдельно и внутри IF, для условного форматирования, подсчёта и валидации данных.
Что вы найдёте в этой статье
- Быстрое объяснение синтаксиса AND и OR.
- Пошаговые примеры и готовые формулы.
- Как вкладывать AND/OR в IF и зачем это нужно.
- Практические советы, частые ошибки и варианты использования.
- Чек-листы для преподавателя, аналитика и тестировщика.
Синтаксис функции AND
=AND(exp1, exp2, ...)- exp1 — первое логическое выражение. Это может быть адрес ячейки, выражение сравнения (например, A1>=5) или ссылка на функцию, возвращающую TRUE/FALSE.
- exp2 и далее — дополнительные выражения. Функция вернёт TRUE только если все выражения истинны.
Примечание: Google Таблицы поддерживают произвольное количество аргументов в AND.
Как использовать AND пошагово
- Выберите ячейку для результата.
- Введите =AND(.
- Укажите первое выражение, например B2>=5.
- Добавьте запятую и укажите следующее выражение, например C2=”Да”.
- Закройте скобку и нажмите Enter.
Примеры использования AND
Пример 1: Оба условия верны
Формула:
=AND(B2=10, C2="Активен")Вернёт TRUE, если B2 равно 10 и в C2 записано «Активен».
Пример 2: Одно условие ложно
Если хотя бы одно выражение ложно, результат FALSE.
Синтаксис функции OR
=OR(exp1, exp2, ...)- exp1 — первое выражение.
- exp2 и далее — дополнительные выражения. OR вернёт TRUE, если верно хотя бы одно выражение.
Как использовать OR пошагово
- Выберите ячейку для результата.
- Введите =OR(.
- Укажите первое выражение (например A2>100).
- Добавьте запятую и укажите второе выражение (например B2=”Да”).
- Закройте скобку и нажмите Enter.
Примеры использования OR
Пример 1: Одно из условий истинно
=OR(A2>100, B2="Да")Если хотя бы одно условие выполняется, результат TRUE.
Пример 2: Ни одно условие не выполнено
Если оба выражения ложны, OR вернёт FALSE.
Различия между AND и OR
- AND требует, чтобы все аргументы были TRUE, чтобы вернуть TRUE.
- OR требует, чтобы хотя бы один аргумент был TRUE, чтобы вернуть TRUE.
Выбор зависит от бизнес-логики: нужно ли одновременно удовлетворять нескольким правилам или достаточно одного.
Вложение AND и OR — практический пример
Представим преподавателя, который ставит проходной балл 5/10 для двух тестов, либо зачёт по внеклассному курсу (Yes/No). Ученик проходит семестр, если он сдал оба теста или имеет зачёт.
Формула в ячейке E2:
=OR(AND(B2>=5, C2>=5), D2="Yes")Объяснение:
- Первый аргумент OR — выражение AND(B2>=5, C2>=5). Оба теста должны быть >=5.
- Второй аргумент — D2=”Yes” — зачёт по дополнительному курсу.
Если выполняется любое из условий, итог TRUE.
Вложение в IF: как вернуть удобный текст
Синтаксис IF:
=IF(exp, val_true, val_false)Пример, возвращающий «Прошел» или «Не прошел»:
=IF(OR(AND(B2>=5, C2>=5), D2="Yes"), "Прошел", "Не прошел")IF выводит val_true, если exp истинно, иначе val_false.
Практические сценарии использования
- Условное форматирование строк, когда нужно подсветить строки, соответствующие нескольким критериям (используйте Формат -> Условное форматирование с формулой).
- Валидация данных: запрещать ввод, если значения не удовлетворяют AND/OR.
- Подсчёт удовлетворяющих записей: в сочетании с COUNTIF/COUNTIFS, SUMPRODUCT или ARRAYFORMULA.
- Автоматизация оценок и статусных колонок (как в примере преподавателя).
Советы по написанию надёжных формул
- Явно указывайте сравнения (>=, <=, =, <>). Не полагайтесь на неявную конвертацию типов.
- При сравнении текстов учитывайте регистр. Используйте UPPER()/LOWER() для нормализации.
- Относитесь к пустым ячейкам: проверяйте ISBLANK или добавляйте условия, исключающие пустые значения.
- Для большого количества условий рассмотрите FILTER, QUERY или IFS вместо длинных цепочек OR/AND.
Типичные ошибки и их устранение
- Сравнение текстового “TRUE” и логического TRUE. Решение: не используйте строки “TRUE”; используйте логический тип или приведение через N() / (A1=”TRUE”).
- Пустые ячейки дают неожиданные результаты. Решение: добавьте ISBLANK() или проверку на длину.
- Неправильный порядок скобок при вложении. Решение: разбивайте формулу на несколько вспомогательных столбцов для отладки.
- Использование нескольких IF вместо IFS. Решение: если много ветвлений, IFS делает формулу читаемой.
Альтернативные подходы
- IFS — когда у вас последовательные проверки с разными результатами.
- QUERY — для фильтрации и агрегации с SQL-подобным синтаксисом.
- FILTER + ARRAYFORMULA — для динамических диапазонов и массовых вычислений.
- REGEXMATCH — если условия основаны на шаблонах в тексте.
Чек-листы по ролям
Преподаватель:
- Проверить границы проходного балла (>= vs >).
- Обработать пропуски: ISBLANK.
- Тестировать на граничных значениях: 5, 4.99, 0.
Аналитик:
- Нормализовать входные данные (верхний/нижний регистр).
- Использовать вспомогательные столбцы для сложных выражений.
- Задокументировать логику формул в отдельном листе.
Тестировщик/QA:
- Составить набор тестовых строк: все комбинации TRUE/FALSE для условий.
- Проверить поведение при пустых/нечисловых данных.
- Проверить интеграцию при экспорте/импорте CSV.
Критерии приёмки для сложной формулы
- Формула возвращает TRUE для всех известных корректных случаев.
- Формула возвращает FALSE там, где хотя бы одно обязательное условие нарушено.
- Формула устойчива к пустым и текстовым значениям.
- Производительность остаётся приемлемой на диапазоне данных до требуемого объёма (проверяется на выборке).
Мини-методология: как строить логическое выражение
- Определите отдельные булевы условия (микро-правила).
- Проверьте каждое условие отдельно в вспомогательных столбцах.
- Скомбинируйте условия с AND/OR по логике бизнес-правила.
- Вложите в IF для читаемого вывода (метки, статусы).
- Параметризируйте пороги (запишите пороговые значения в отдельные ячейки).
Тестовые примеры (cases)
- Case A: B2=6, C2=7, D2=”No” -> OR(AND(>=5,>=5),”Yes”) => TRUE
- Case B: B2=5, C2=4, D2=”Yes” -> TRUE (за зачёт)
- Case C: B2=3, C2=2, D2=”No” -> FALSE
- Case D: B2=5, C2=5, D2=”Yes” -> TRUE (и оба теста, и зачёт)
- Case E: B2=””, C2=6, D2=”No” -> FALSE (проверить ISBLANK если нужно другое поведение)
Сниппеты и примеры формул (cheat sheet)
- Проверить, что оба столбца больше порога:
=AND(A2>threshold, B2>threshold)- Проверить, что хотя бы одно значение равно заданному:
=OR(A2="Да", B2="Да", C2="Да")- Вернуть текст вместо TRUE/FALSE:
=IF(AND(A2>=5, B2>=5), "Зачёт", "Не зачёт")- Комбинация с COUNTIFS для подсчёта строк, удовлетворяющих условиям:
=SUMPRODUCT((A2:A100>=5)*(B2:B100>=5))(внимание: SUMPRODUCT с булевыми массивами эквивалентен подсчёту совпадений для сложных условий).
Решение для больших таблиц: производительность
- Используйте диапазоны ограниченной длины вместо целых столбцов (A:A), если это возможно.
- Перенесите тяжёлые вычисления в скрипт Apps Script, если формулы слишком медленные.
- При большом количестве условий используйте вспомогательные столбцы, это часто быстрее и легче для поддержки.
Decision tree: выбрать AND или OR
flowchart TD
A[Есть несколько условий?] --> B{Требуется, чтобы выполнялись все?}
B -- Да --> C[Используйте AND]
B -- Нет --> D{Достаточно хотя бы одного?}
D -- Да --> E[Используйте OR]
D -- Нет --> F[Пересмотреть логику или использовать IFS/QUERY]Edge-case gallery
- Текст «5» vs число 5: “5”=5 обычно TRUE в Google Таблицах, но лучше явно приводить типы.
- Логические значения в CSV: при импорте TRUE/FALSE могут стать строками — проверяйте тип.
- Формула с пустыми аргументами: AND() без аргументов вернёт ошибку, но функции обычно вызывают минимум один аргумент.
1-строчный глоссарий
- AND — возвращает TRUE, если все выражения истинны.
- OR — возвращает TRUE, если хотя бы одно выражение истинно.
- IF — условный оператор, возвращающий одно значение при TRUE и другое при FALSE.
- ISBLANK — проверяет, пуста ли ячейка.
- ARRAYFORMULA — применяет формулу ко всему диапазону.
Рекомендации по локализации и форматам
- В русской локали разделитель аргументов в формулах остаётся запятой в интерфейсе Google Таблиц (в зависимости от региональных настроек он может быть точкой с запятой). Проверьте настройки языка и региона в Файл -> Настройки.
Резюме
AND и OR — простые и мощные инструменты для проверки логики в Google Таблицах. Их удобно применять для валидации, подсчёта и управления статусами. Всегда тестируйте формулы на граничных и пустых значениях, документируйте логику и используйте вспомогательные столбцы для упрощения отладки.
Важное
Если у вас много условий или вы испытываете проблемы с производительностью, подумайте об использовании IFS, QUERY или переносе вычислений в Apps Script.
Короткое руководство для начала
- Попробуйте примеры прямо в отдельном листе тестовых данных.
- Для сложной логики разбивайте формулу на шаги.
- Прописывайте ожидаемые результаты в тестовых строках и сверяйтесь с ними.
Ключевые выводы
- AND = все условия должны быть верны; OR = достаточно одного.
- Вложение AND/OR в IF даёт читабельный вывод (метки, статусы).
- Нормализуйте данные и обрабатывайте пустые ячейки.
- При больших наборах данных используйте оптимизации и вспомогательные столбцы.
Похожие материалы
Стоячий стол: как начать и не навредить себе
Устранение прерывистого звука Bluetooth в Windows 10
Выключение Windows 10: все способы и советы
Как установить видеокарту в ПК — пошаговая инструкция
Bing с ИИ: как работает и как использовать