Гид по технологиям

Функция XOR в Google Sheets — как она работает и практические примеры

9 min read Google Sheets Обновлено 10 Nov 2025
XOR в Google Sheets — как работает и примеры
XOR в Google Sheets — как работает и примеры

TL;DR

XOR возвращает TRUE, если среди переданных логических выражений встречается нечетное число истинных значений, иначе возвращает FALSE. Эта функция полезна, когда нужно определить нечётность количества совпадений или проверить одну булеву проверку в виде логического результата. В статье — синтаксис, пошаговые примеры, сценарии применения, когда функция не подходит, альтернативы и готовые чек‑листы.

Логотип Google Sheets с символом XOR

XOR — логическая операция Exclusive OR. В Google Sheets функция XOR возвращает TRUE или FALSE в зависимости от переданных логических выражений и от того, встречается ли среди них нечётное число значений TRUE.

Функция может быть чуть менее очевидна, чем простые IF или AND, но она полезна в ситуациях, где важна нечётность количества истин. Ниже подробно разберём синтаксис, поведение, практические сценарии и рекомендации по тестированию.

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

=XOR(logical1, logical2, ...)

Где logical1, logical2 и т.д. — логические выражения, ссылки на ячейки или массивы. Функция считает каждое значение за “истинное”, если оно эквивалентно TRUE или если это ненулевая числовая величина/непустая ячейка, и возвращает TRUE только когда число истинных входов нечётное.

Ключевые правила поведения:

  • Если среди аргументов нечётное количество значений TRUE — результат TRUE.
  • Если чётное количество значений TRUE или ни одного TRUE — результат FALSE.
  • Числа, отличные от нуля, и непустые строки считаются истинными, если явно не являются логическими выражениями с оператором сравнения.
  • Для проверки диапазона аргументы можно передавать как диапазон или как выражение с ARRAYFORMULA, чтобы функция работала построчно.

Результат работы XOR для разных входных параметров

Примеры и разбор строк выше:

  • B2: =XOR(1>2) — выражение ложно, число истин = 0 → FALSE.
  • C2: =XOR(2>1) — одно истинное выражение → TRUE.
  • D2: =XOR(2>1, 1>2) — одна истина, одна ложь → 1 истина → TRUE.
  • E2: =XOR(2>1, 4>3) — две истины → 2 (чётное) → FALSE.

Если подать числа без сравнения, например =XOR(1,2,3,4), функция посчитает четыре истинных значения и вернёт FALSE.

Как применять XOR в Google Sheets

XOR полезна в двух основных сценариях:

  1. Проверка одного условия с явным булевым результатом (аналогично IF, но возвращает только TRUE/FALSE).
  2. Подсчёт нечётности количества истин в наборе условий или значений.

Ниже — подробные рабочие примеры и пошаговые инструкции для обоих сценариев.

Пример: один параметр

Когда вы передаёте в XOR один логический тест, результат просто повторяет булевую проверку, но сам синтаксис короче, если вам нужен именно TRUE/FALSE.

Колонка чисел в Google Sheets

Задача: пометить, больше ли каждое значение среднего по столбцу.

Порядок действий:

  1. Выберите ячейку B2 для результата.
  2. Введите формулу:
=XOR(A2>AVERAGE(A2:A14))
  1. Нажмите Enter.
  2. Скопируйте формулу вниз по столбцу с помощью маркера заполнения.

Логика: A2>AVERAGE(A2:A14) — это булев тест. Если он истинный, XOR получает один true и возвращает TRUE. Если ложь — возвращает FALSE.

Применение XOR для проверки выше среднего

Советы:

  • Если нужно вернуть текст, используйте IF с XOR внутри: =IF(XOR(…), “Выше”, “Не выше”).
  • Для обработки пустых строк добавьте проверку ISBLANK, чтобы пустые ячейки не считались как true.

Пример: несколько параметров

Когда в XOR передаёте диапазон или несколько тестов, функция считает количество истинных значений и возвращает TRUE при нечётном количестве.

Строки чисел в Google Sheets

Задача: определить, содержит ли каждая строка нечётное количество числовых значений.

Порядок действий:

  1. Выберите ячейку F2.
  2. Введите формулу:
=XOR(A2:E2)
  1. Нажмите Enter.
  2. Протяните формулу вниз.

Так как без явных сравнений числа считаются истинными, XOR посчитает значения в диапазоне как набор true/false и вернёт TRUE для нечётного количества.

Определение нечётного количества чисел с помощью XOR

Если необходимо игнорировать пустые ячейки или строки с текстом, комбинируйте с IF или N/ISNUMBER:

=XOR(ARRAYFORMULA(ISNUMBER(A2:E2)*1))

Эта конструкция сначала превращает булевы значения в 1/0, затем XOR оценивает массив.

Практический пример 1: турнирная таблица футбольного чемпионата

Ситуация: у каждой команды два матча. Команда с 2 победами — на первом месте, с 0 побед — на последнем. Команды с одной победой играют дополнительный матч. Нужно пометить команды, которым нужен третий матч.

Определение третьего матча с помощью XOR

Решение:

=ArrayFormula(XOR(B2:C2="Win"))

Логика: выражение B2:C2=”Win” возвращает массив TRUE/FALSE. XOR вернёт TRUE только тогда, когда ровно одно значение равно “Win”, то есть команда выиграла ровно один матч.

Примечание: ARRAYFORMULA нужна, если вы хотите применить формулу к диапазону строк сразу и вернуть массив результатов.

Практический пример 2: выбор формы стола для ужина

Ситуация: у гостей есть флажок “приводит компаньона”. Прямоугольный стол равномерно размещает только чётное количество людей; круглый стол — работает при любом количестве. Нужно определить, потребуется ли круглый стол, если общее количество гостей нечетное.

Определение чётности общего числа гостей с помощью XOR

Формула:

=ArrayFormula(XOR(B2:B10="No"))

Пояснение: “No” означает, что гость придет без компаньона. Все гости с компаньонами добавляют по 2 человека (четное). Значение общего числа нечётно тогда и только тогда, когда нечётно число тех, кто приходит без компаньона. XOR проверяет нечётность этого числа.

Когда XOR не подходит

  • Если нужно вернуть кастомизированный вывод (текст, числа) — используйте IF внутри или вместо XOR.
  • Если нужна логика «все истинны» или «хотя бы одна истина» — используйте AND или OR соответственно.
  • Для подсчёта точного количества TRUE используйте COUNTIF/COUNTIFS или SUMPRODUCT.
  • Если аргументы не булевы и вы хотите учитывать только TRUE/ FALSE, приведите их при помощи ISLOGICAL или (A1=TRUE).

Примеры неудачных применений:

  • Попытка использовать XOR для определения «как минимум два из трёх истинны» — XOR не даёт информации о количестве истин, лишь о нечётности.
  • Использование XOR для сложных ветвлений, где нужны разные текстовые ответы по каждой комбинации — лучше IF/IFS.

Альтернативы и комбинации

  • AND(…) — возвращает TRUE, если все аргументы TRUE.
  • OR(…) — возвращает TRUE, если хотя бы один аргумент TRUE.
  • NOT(XOR(…)) — логическое отрицание результата XOR, полезно для проверки чётности (TRUE при чётном числе истин).
  • COUNTIF/COUNTIFS или SUMPRODUCT для получения точного количества соответствий.
  • MOD(SUM(–(A2:E2<>””)),2)=1 — альтернативный способ проверить нечётность количества непустых ячеек.

Пример с MOD:

=MOD(SUM(--(ISNUMBER(A2:E2))), 2)=1

Эта формула суммирует числа 1/0 для наличия чисел и проверяет остаток от деления на 2.

Пошаговый плейбук для внедрения XOR в отчёт

  1. Определите, нужна ли вам именно проверка нечётности количества соответствий.
  2. Подготовьте диапазон данных и очистите пустые/ошибочные значения.
  3. Если нужно посчитать только определённые элементы, приведите их к логическому виду (например, B2:C2=”Win”).
  4. Протестируйте формулу на контрольных строках с 0, 1, 2 и более истинными значениями.
  5. При необходимости оберните в ARRAYFORMULA для массовой обработки.
  6. Если нужен не булев вывод, используйте IF(XOR(…), “Да”, “Нет”).
  7. Задокументируйте логику в примечаниях к листу.

Критерии приёмки

  • Формула возвращает TRUE для случаев с нечётным количеством соответствий и FALSE для чётных.
  • Формула корректно обрабатывает пустые ячейки и не считает их за истинные, если это нежелательно.
  • При использовании ARRAYFORMULA результаты распространяются на запланированный диапазон.
  • Документация/примечание на листе объясняет условие проверки.

Тесты и критерии приёмки

Тесты, которые нужно выполнить при внедрении:

  1. Строка с 0 истинными значениями → ожидаем FALSE.
  2. Строка с 1 истинным значением → ожидаем TRUE.
  3. Строка с 2 истинными значениями → ожидаем FALSE.
  4. Строка с 3 истинными значениями → ожидаем TRUE.
  5. Диапазон, содержащий пустые ячейки, которые не должны учитываться → отработать корректно.
  6. Диапазон со смешанными типами (текст, числа, логические) — проверить приведение типов и ожидаемое поведение.

Для автоматизации тестов используйте отдельный лист с эталонными кейсами и ссылкой на основную формулу.

Чеклист по ролям

Аналитик:

  • Проверил исходные данные на пустые и ошибочные значения.
  • Обосновал необходимость именно проверки нечётности.
  • Задокументировал формулу для коллег.

Инженер данных:

  • Убедился, что диапазоны динамичны и не дают #REF! при вставке строк.
  • Добавил валидацию типов там, где это нужно.

Финансовый менеджер:

  • Получил простой булевый столбец для дальнейшего сводного анализа.
  • Проверил, что при изменении данных результаты обновляются автоматически.

Ментальные модели и эвристики

  • “Нечётность как бинарный фильтр“: XOR — это быстрый способ сказать “один из набора” без подсчёта точного числа.
  • “Преобразуй в 1/0”: если нужно знать количество, сначала преобразуй TRUE/FALSE в 1/0 и суммируй.
  • “XOR = нечётность”: думайте о XOR как о проверке остатка от деления на 2.

Пример эвристики:

  • Если задача — проверить четность/нечетность набора совпадений — используйте XOR.
  • Если нужно знать “сколько” — используйте COUNTIF/SUMPRODUCT.

Полезные шаблоны формул

Проверить нечётность количества непустых ячеек в диапазоне:

=MOD(COUNTA(A2:E2), 2)=1

Проверить нечётность количества ячеек со значением “Да”:

=MOD(COUNTIF(A2:E2, "Да"), 2)=1

Использовать XOR внутри IF для выводов в текстовом виде:

=IF(XOR(A2>10, B2<5), "Условие выполнено", "Условие не выполнено")

Решение типичных ошибок и подводные камни

  1. Пустые ячейки могут считаться “ложными”. Если вы не хотите учитывать пустые, фильтруйте их явно.
  2. Текстовые значения считаются истиной, если не сравниваются; это может ввести в заблуждение при передаче диапазонов без проверок.
  3. XOR не возвращает количество истин — для аналитики используйте COUNT.
  4. При использовании ARRAYFORMULA внимательно проверяйте размер возвращаемого массива, чтобы избежать сдвигов в соседних ячейках.

Decision tree для выбора между XOR и альтернативами

flowchart TD
  A[Нужна ли проверка нечётности количества совпадений?] -->|Да| B[Простая булева метка нужна?]
  A -->|Нет| C[Используйте AND/OR/COUNTIF]
  B -->|Да| D[Используйте XOR]
  B -->|Нет, нужен текст/число| E[Используйте IF с XOR или COUNTIF/SUMPRODUCT]
  D --> F[Нужно применить к диапазону построчно?]
  F -->|Да| G[Обёртка ArrayFormula или применить формулу по строкам]
  F -->|Нет| H[Используйте одиночные аргументы]

Фактбокс: что важно запомнить

  • XOR возвращает TRUE при нечётном количестве TRUE.
  • Числа, отличные от нуля, и непустые строки могут считаться TRUE, если не приводить типы.
  • Для точного подсчёта используйте COUNTIF/COUNTIFS или SUMPRODUCT.

Краткий глоссарий

XOR — Exclusive OR, логическая операция, дающая TRUE при нечётном числе TRUE во входных данных. ARRAYFORMULA — функция, расширяющая выражение на массив или диапазон и возвращающая массив результатов. COUNTIF/COUNTIFS — функции подсчёта ячеек по критериям. MOD — возвращает остаток от деления; полезно для проверки чётности.

Примеры тестовых кейсов для валидации реализации

  1. Данные: [ , 1, 2, “x”, 0] — ожидаем поведение: пустая ячейка не учитывается, числа и текст учитываются, ноль трактуется как FALSE.
  2. Данные: [“Win”,”Lose”] с формулой XOR(B2:C2=”Win”) — ожидаем FALSE.
  3. Данные: один столбец, все пустые — ожидаем FALSE.
  4. Данные: MIX чисел и логических TRUE/FALSE — проверить приведение типов.

Резюме

XOR в Google Sheets — мощный инструмент для задач, где нужна проверка нечётности количества истинных условий. Она проста в синтаксисе, но требует внимания к типам данных и пустым значениям. Используйте XOR вместе с ARRAYFORMULA для пакетной обработки, а при необходимости комбинируйте с COUNTIF, IF и MOD для точных или текстовых ответов.

Важно: если вам нужен точный подсчёт, или если логика должна различать ситуации “по двум истинным” и “по трём истинным”, XOR сам по себе не даст нужной информации. В таких случаях используйте счётчики или более сложные логические конструкции.

Попробуйте применить XOR в своих таблицах: начните с небольшого тестового листа и проверьте все перечисленные тест‑кейсы. Это ускорит внедрение и снизит риск ошибок.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Herodotus — Android‑троян и защита
Кибербезопасность

Herodotus — Android‑троян и защита

Как включить новый Пуск в Windows 11
Windows

Как включить новый Пуск в Windows 11

Панель полей сводной таблицы в Excel — быстрый разбор
Excel

Панель полей сводной таблицы в Excel — быстрый разбор

Включение нового меню Пуск в Windows 11
Windows

Включение нового меню Пуск в Windows 11

Дубликаты Диспетчера задач в Windows 11 — как исправить
Windows

Дубликаты Диспетчера задач в Windows 11 — как исправить

Как посмотреть историю просмотров Reels в Instagram
Социальные сети

Как посмотреть историю просмотров Reels в Instagram