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

Как использовать XLOOKUP в Google Таблицах

7 min read Google Таблицы Обновлено 23 Dec 2025
XLOOKUP в Google Таблицах — как использовать
XLOOKUP в Google Таблицах — как использовать

Иконка Google Sheets на зелёном фоне

Быстрые ссылки

  • About XLOOKUP in Google Sheets

  • How to Use XLOOKUP in Google Sheets

Краткое описание XLOOKUP в Google Таблицах

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

Синтаксис:

XLOOKUP(search_value, lookup_range, result_range, missing_value, match_mode, search_mode)

Первые три аргумента обязательны; оставшиеся три — опциональны и позволяют гибко настроить поведение поиска.

Короткие определения аргументов:

  • Search_value — искомое значение: число, текст или ссылка на ячейку. Текст в кавычках.
  • Lookup_range — диапазон, в котором ищут искомое значение; должен быть одной строкой или одним столбцом.
  • Result_range — диапазон, из которого возвращается значение; должен совпадать по размеру с lookup_range.
  • Missing_value — значение, возвращаемое при отсутствии совпадения (по умолчанию #N/A).
  • Match_mode — режим совпадения: 0 = точное, 1 = точное или следующее большее, -1 = точное или следующее меньшее, 2 = совпадение с подстановочными символами.
  • Search_mode — режим поиска: 1 = сверху вниз (по умолчанию), -1 = снизу вверх, 2 = бинарный поиск по возрастанию, -2 = бинарный поиск по убыванию.

Факт-бокс:

  • Обязательных аргументов: 3
  • Максимум аргументов: 6
  • Поддерживает поиск в обе стороны (влево/вправо)

Важно: lookup_range и result_range должны быть одинаковой длины и одной ориентации (оба столбцы или обе строки). Иначе XLOOKUP вернёт ошибку.

Как использовать XLOOKUP — базовые примеры

Ниже приведены реальные варианты использования с пояснениями и изображениями исходной таблицы.

Пример 1 — простой поиск по номеру заказа, чтобы получить имя клиента:

=XLOOKUP(123456,D2:D14,A2:A14)

Здесь 123456 — search_value (номер заказа), D2:D14 — lookup_range (столбец с номерами заказов), A2:A14 — result_range (столбец с именами клиентов). Результат — имя клиента, связанное с заказом.

Поиск справа налево с XLOOKUP

Пояснение: XLOOKUP умеет искать как слева направо, так и справа налево, поэтому можно искать имя клиента по номеру заказа и наоборот.

Пример 2 — поиск имени клиента по его имени, чтобы вернуть номер заказа:

=XLOOKUP("Marge Simpson",A2:A14,D2:D14)

Поиск слева направо с XLOOKUP

Отсутствующее значение

По умолчанию при отсутствии совпадения функция возвращает ошибку #N/A. Чтобы вернуть более удобное значение, укажите fourth-аргумент:

=XLOOKUP("Homer Simpson",A2:A14,D2:D14,"ZERO")

Результат: вместо #N/A отобразится текст “ZERO”.

XLOOKUP с настроенным значением при отсутствии совпадения

Режим совпадения (match_mode)

Пример: ищем значение 29 в диапазоне сумм и возвращаем имя клиента. Укажем match_mode = 1 (точное совпадение или следующее большее):

=XLOOKUP(29,F2:F14,A2:A14,,1)

Пояснение: если точного 29 нет, XLOOKUP вернёт ближайшее большее значение (например, 30).

XLOOKUP с режимом совпадения

Режим поиска (search_mode)

Пример: используем match_mode = -1 (точное или следующее меньшее) и search_mode = -1 (поиск снизу вверх):

=XLOOKUP(29,F2:F14,A2:A14,,-1,-1)

Пояснение: если несколько строк удовлетворяют условию (например, несколько значений равны 28 — меньшее ближайшее), то при search_mode = -1 вернётся первое найденное снизу вверх.

XLOOKUP: поиск снизу вверх с match и search режимами

Аналогично, при search_mode = 1 (по умолчанию) будет найден первый подходящий сверху вниз.

XLOOKUP при поиске сверху вниз

Частые ошибки и ограничения (когда XLOOKUP не сработает)

  1. Несовпадающие размеры диапазонов
  • Проблема: lookup_range и result_range разной длины или разной ориентации.
  • Симптом: #REF! или неожиданное поведение.
  • Решение: исправьте диапазоны так, чтобы они были ровно одинаковыми по длине и оба столбцы или обе строки.
  1. Неправильные типы данных
  • Проблема: числа хранятся как текст или есть лишние пробелы.
  • Симптом: нет совпадения при видимом соответствии.
  • Решение: привести типы (VALUE, TRIM, TO_TEXT) или использовать VALUE/TO_TEXT при поиске.
  1. Бинарный поиск без сортировки
  • Проблема: выбран search_mode = 2 или -2, но диапазон не отсортирован соответственно.
  • Симптом: неверные результаты.
  • Решение: используйте обычный поиск (1 или -1) или отсортируйте данные.
  1. Wildcards и режим совпадения
  • Проблема: match_mode = 2 (подстановочные символы) и ввод без учёта регистра/спецсимволов.
  • Симптом: неожиданные совпадения.
  • Решение: используйте корректные подстановочные символы (*, ?) и экранирование.
  1. Поиск по множеству столбцов
  • Проблема: попытка передать lookup_range как несколько столбцов.
  • Симптом: ошибка или неверный результат.
  • Решение: при необходимости соберите ключ с помощью JOIN/ARRAYFORMULA или используйте FILTER/INDEX+MATCH.
  1. Поддержка в старых версиях/совместимость с Excel
  • Проблема: XLOOKUP не поддерживался в старых версиях Excel; в Google Таблицах функция доступна в современных аккаунтах.
  • Решение: при экспорте/импорте в старые Excel используйте INDEX+MATCH или VLOOKUP как запасной вариант.

Важно: всегда проверяйте опцию “Показать формулы” и данные на лишние пробелы при неожиданном поведении.

Альтернативные подходы и когда их выбирать

  • VLOOKUP / HLOOKUP — простой вариант для вертикального/горизонтального поиска, но ограничен направлением и требует указания номера столбца.
  • INDEX + MATCH — гибкая связка, работает в любых направлениях, стабильна при вставке/удалении столбцов, но формулы сложнее.
  • FILTER — возвращает массив строк/значений, удобна когда нужно несколько совпадений.
  • QUERY — мощный инструмент для выборки по условию с SQL-подобным синтаксисом.

Пример замены XLOOKUP на INDEX+MATCH:

=INDEX(A2:A14, MATCH(123456, D2:D14, 0))

Когда выбрать XLOOKUP: когда нужна простая и читаемая конструкция, поддерживающая разные режимы поиска и замену значения при отсутствии совпадения.

Методика выбора параметров XLOOKUP — мини-процесс

  1. Определите, где находится ключ (lookup_range) и где результат (result_range).
  2. Проверьте, одинаковой ли длины диапазоны.
  3. Решите, нужен ли точный поиск или приближённый (match_mode).
  4. Если приближённый и вы используете бинарный поиск, убедитесь, что данные отсортированы.
  5. Укажите понятное значение для отсутствующего результата (missing_value).
  6. Тестируйте на краевых случаях (пустые ячейки, дубляжи, типы данных).

Mermaid-диаграмма для выбора режима (решение):

flowchart TD
  A[Нужно точное совпадение?] -->|Да| B[match_mode=0]
  A -->|Нет| C[Нужно приблизительное?]
  C -->|Да| D[Найти ближайшее большее/меньшее?]
  D --> E{Больше}
  D --> F{Меньше}
  E --> G[match_mode=1]
  F --> H[match_mode=-1]
  C -->|Нужно wildcard совпадение| I[match_mode=2]
  G --> I1[Проверить search_mode: 1 или -1; при сортировке можно 2/-2]
  H --> I1
  I --> I1

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

Аналитик:

  • Убедиться, что ключи уникальны или понимать поведение при дубликатах.
  • Проверить типы данных и удалить скрытые пробелы.
  • Добавить missing_value для читабельности.

Финансовый аналитик:

  • Использовать точное совпадение для идентификаторов транзакций.
  • Для диапазонов сумм применять match_mode с осторожностью и документировать допущения.

Разработчик / автоматизатор:

  • Писать формулы так, чтобы диапазоны были относительными/абсолютными по необходимости.
  • Оборачивать формулу в IFERROR, если нужно скрыть внутренние ошибки.

QA / Тестировщик:

  • Подготовить тестовые кейсы: точное совпадение, отсутствие, ближайшее большее, ближайшее меньшее, wildcard, несоответствие типов.
  • Тестировать поведение при сортировке и без неё.

Критерии приёмки (тест-кейсы)

  1. Тест 1 — точное совпадение
  • Ввод: существующее значение в lookup_range.
  • Ожидаемый: корректный связанный результат из result_range.
  1. Тест 2 — отсутствие значения и missing_value
  • Ввод: значение отсутствует.
  • Ожидаемый: возвращается заданное missing_value или #N/A при его отсутствии.
  1. Тест 3 — match_mode = 1 (следующее большее)
  • Ввод: число между существующими значениями.
  • Ожидаемый: ближайшее большее значение.
  1. Тест 4 — search_mode = -1 (поиск снизу вверх)
  • Ввод: несколько возможных совпадений.
  • Ожидаемый: первый найденный снизу вверх.
  1. Тест 5 — бинарный поиск
  • Ввод: выбор search_mode = 2 без сортировки.
  • Ожидаемый: отметить как неприемлемое поведение / тест провален, пока данные не отсортированы.

Советы по производительности и безопасности

  • Избегайте вложенных XLOOKUP для очень больших таблиц — это может замедлить расчёт. Вместо этого используйте индексированные диапазоны или вспомогательные столбцы.
  • Для массовых операций лучше применять QUERY или предобработать данные (сводные таблицы, агрегирование).
  • Не храните чувствительные данные в общей таблице без ограничений доступа.

Миграция из Excel и совместимость

  • XLOOKUP в Excel и Google Таблицах почти идентичны по синтаксису, поэтому формулы можно переносить при наличии поддержки XLOOKUP в целевой среде.
  • Для старых версий Excel используйте INDEX+MATCH или VLOOKUP как запасной вариант.

Краткий глоссарий (1 строка на термин)

  • Lookup_range — диапазон, где ищут значение.
  • Result_range — диапазон, из которого возвращают результат.
  • Match_mode — режим совпадения (точный/приблизительный/wildcard).
  • Search_mode — направление/алгоритм поиска.

Заключение

XLOOKUP — универсальная функция поиска в Google Таблицах, подходящая для большинства задач по сопоставлению данных. Она проще в чтении, чем INDEX+MATCH, и гибче, чем VLOOKUP/HLOOKUP. Перед массовым применением проверьте размеры диапазонов, типы данных и режимы поиска. Используйте предоставленные тест-кейсы и чек-листы, чтобы убедиться в корректности формул.

Итоговые рекомендации:

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

Для дополнительной информации посмотрите связанные материалы: базовые функции Google Таблиц и примеры использования INDEX + MATCH.

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

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

Запись и воспроизведение DVD/CD в Ubuntu
Linux

Запись и воспроизведение DVD/CD в Ubuntu

Восстановить значки рабочего стола в Windows 10
Windows

Восстановить значки рабочего стола в Windows 10

Изменить таймаут sudo в Linux
Linux

Изменить таймаут sudo в Linux

Как быстро сканировать QR‑коды на Android
Android.

Как быстро сканировать QR‑коды на Android

PowerShell: консоль, ISE и справка
Администрирование

PowerShell: консоль, ISE и справка

Как получить доступ к файлам OneDrive с другого ПК
Облачные хранилища

Как получить доступ к файлам OneDrive с другого ПК