XLOOKUP в Excel — полное руководство

Что такое XLOOKUP
XLOOKUP — это современная функция поиска в Microsoft Excel. Она поддерживает вертикальный и горизонтальный поиск в таблице и возвращает значение из другой строки или столбца. XLOOKUP устраняет многие ограничения VLOOKUP и HLOOKUP: не требует фиксированного положения столбцов, по умолчанию ищет точное совпадение и умеет возвращать несколько значений одновременно.
Краткое определение: XLOOKUP ищет заданное значение в диапазоне и возвращает соответствующие значения из другого диапазона.
Важно: XLOOKUP доступен в Microsoft 365 и в Office 365 Online; в локальных версиях Office 2010–2019 его нет.
Как получить доступ к XLOOKUP
- Нужна подписка Microsoft 365 или доступ к Office 365 Online.
- В Excel функция доступна как обычная формула — введите в строке формул или используйте диалог вставки функции.
- Если коллеги используют старые версии Office, результаты с XLOOKUP могут быть недоступны у них.
Синтаксис XLOOKUP
=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])Коротко о параметрах:
- lookup_value (обязательно): искомое значение.
- lookup_array (обязательно): диапазон, где ищем значение.
- return_array (обязательно): диапазон, из которого возвращается результат.
- if_not_found (необязательно): значение, возвращаемое, если совпадение не найдено.
- match_mode (необязательно): режим совпадения: 0 точное (по умолчанию), -1 точное или следующее меньшее, 1 точное или следующее большее, 2 с подстановочными символами (wildcards).
- search_mode (необязательно): режим поиска: 1 с начала (по умолчанию), -1 с конца, 2 бинарный поиск по возрастанию (требует сортировки), -2 бинарный поиск по убыванию (требует сортировки).
Совет: match_mode=2 позволяет использовать символы * ? ~ для частичного соответствия.
Преимущества и ограничения
Преимущества
- Поддерживает вертикальный и горизонтальный поиск.
- Менее громоздкая запись: достаточно трёх обязательных аргументов.
- По умолчанию ищет точное совпадение, что уменьшает неожиданные результаты.
- Поддерживает частичное совпадение с подстановочными знаками.
- Может возвращать массив значений (несколько колонок или строк).
- Удобна для перестановки колонок — порядок столбцов не влияет на результат.
Ограничения и недостатки
- Доступна не во всех версиях Excel (только Microsoft 365 и Office 365 Online).
- Возвращает ошибку, если lookup_array и return_array имеют разную длину.
- Для больших листов с выбором двух широких диапазонов вручную может быть медленно — лучше пользоваться именованными диапазонами или таблицами Excel (Table).
- Новые опции могут казаться сложными для начинающих.
Практические примеры
Ниже приведены типовые сценарии использования. В примерах предполагается, что у вас есть таблица с именами и оценками по предметам.
Пример 1 — базовый вертикальный поиск
Предположим, в столбце A — имена учеников, в столбце B — оценки по предмету “Science”. В ячейке F2 указано имя “Matthew”. Нужно вернуть оценку по Science.
Формула в ячейке G2:
=XLOOKUP(F2, A2:A15, B2:B15)Пояснение: функция ищет значение в F2 в диапазоне A2:A15 и возвращает соответствующее значение из B2:B15. По умолчанию будет точное совпадение.
Пример 2 — поиск, когда lookup находится справа от return_array
Если имена находятся в колонке D, а оценки в колонке A, формула меняется местами диапазонов:
=XLOOKUP(F2, D2:D15, A2:A15)XLOOKUP свободно ищет в любом направлении, поэтому порядок столбцов не имеет значения.
Пример 3 — возврат нескольких столбцов (горизонтально и вертикально)
Если нужно вернуть оценки по всем предметам (несколько колонок) для студента Matthew, можно передать return_array как многоколоночный диапазон:
=XLOOKUP(F2, D2:D15, A2:C15)Это вернёт массив значений из колонок A:C для строки, где найдено имя.
Если ваш Excel поддерживает динамические массивы, результаты автоматически разольются по соседним ячейкам.
Пример 4 — использование if_not_found и wildcard
Пример с обработкой отсутствия значения и частичным совпадением:
=XLOOKUP("*Matt*", A2:A100, B2:B100, "Не найдено", 2)Здесь match_mode=2 позволяет использовать шаблоны. Если совпадения нет, вместо ошибки возвращается строка “Не найдено”.
Когда XLOOKUP не подходит — типичные случаи
- Пользователи, у которых Excel старых версий (2010–2019) — им придётся использовать VLOOKUP, INDEX/MATCH или обновить Excel.
- Если lookup_array и return_array имеют разную длину — формула вернёт ошибку.
- При очень больших таблицах и использовании бинарного поиска (search_mode=2/-2) данные должны быть предсортированы; иначе результат будет некорректным.
- Если вам нужно совместить значения из нескольких таблиц с неодинаковой структурой, может потребоваться Power Query или сводные таблицы.
Альтернативы и когда их выбирать
- VLOOKUP — простая альтернатива, если у вас старые версии Excel и целевой столбец находится справа от ключа. Ограничение: неудобство при изменении структуры таблицы.
- INDEX + MATCH — мощная комбинация для старых версий Excel. Более гибкая, но требует двух функций.
- XLOOKUP — выбирайте, когда доступна подписка Microsoft 365, нужна гибкость и удобство (поиск в обе стороны, обработка не найдено, wildcard).
- Power Query — лучше для объединения больших наборов данных и сложной трансформации перед поиском.
Ментальные модели и практические эвристики
- Думайте о lookup_array как о “ключе” и о return_array как об “ответе”.
- Для стабильности используйте именованные диапазоны или таблицы Excel (Insert → Table). Тогда при добавлении строк формулы останутся корректными.
- Если возвращаете несколько столбцов — проверьте поддержку динамических массивов в вашей версии Excel.
- Всегда добавляйте if_not_found, чтобы избежать ошибок #N/A в сводных отчётах.
Мини‑методология внедрения XLOOKUP в отчётность (шаги)
- Проинвентаризируйте отчёты и определите, где используются VLOOKUP/INDEX+MATCH.
- Создайте резервную копию файлов перед массовой заменой формул.
- Преобразуйте диапазоны в таблицы Excel или присвойте именованные диапазоны.
- Заменяйте формулы постепенно и тестируйте на выборочных листах.
- Добавьте if_not_found и логирование ошибок.
- Документируйте изменения и уведомьте пользователей о требовании Microsoft 365.
Роль‑направленные чек‑листы
Аналитик:
- Проверить согласованность диапазонов.
- Заменить VLOOKUP на XLOOKUP в тестовой копии.
- Добавить обработку отсутствия данных.
Разработчик отчётов:
- Использовать именованные диапазоны или Table.
- Тестировать производительность на больших наборах.
- Автоматизировать замену формул скриптом, если нужно.
Менеджер данных:
- Оценить совместимость пользователей с Microsoft 365.
- Планировать обучение и релизную стратегию.
Критерии приёмки
- Формула возвращает ожидаемые значения для контрольных строк.
- При удалении искомой записи возвращается if_not_found, а не ошибка.
- Диапазоны lookup и return имеют одинаковую длину.
- Документация обновлена, пользователи уведомлены о требованиях к версии Excel.
Тестовые сценарии и приёмка
- Позитивный тест: значение присутствует — правильный результат.
- Негативный тест: значение отсутствует — возвращается текст из if_not_found.
- Граничный тест: lookup в первой и последней строке диапазона.
- Совместимость: открыть файл в Excel 2016 — убедиться, что пользователи получают инструкцию об обновлении или альтернативной формуле.
Совместимость и советы по миграции
- При совместной работе с пользователями старых версий предоставьте копию, где XLOOKUP заменён на INDEX+MATCH или VLOOKUP.
- Для массовой миграции используйте именованные диапазоны — они упрощают автоматизированную замену формул.
- Для совместимости в корпоративной среде подготовьте гайд с примерами и шаблонами.
Частые ошибки и способы устранения
- Ошибка #N/A: проверьте точность lookup_value и совпадение типов (текст/число). Приведите типы к одному формату с помощью VALUE или TEXT.
- Неверный результат при search_mode = 2 или -2: убедитесь, что данные отсортированы в правильном порядке.
- #REF! — случается при указании диапазонов разной длины. Выравнивайте длины или используйте Table.
Краткая памятка по безопасности и приватности
XLOOKUP сама по себе не передаёт данные внешним сервисам. Тем не менее:
- Будьте внимательны с конфиденциальными данными при совместном доступе к файлам.
- При автоматизации убедитесь, что макросы и скрипты соблюдают корпоративные политики безопасности.
Заключение
XLOOKUP — современный и гибкий инструмент для поиска в Excel. Он упрощает работу с таблицами, устраняет многие ограничения VLOOKUP и делает формулы чище. Основной барьер — совместимость версий. Планируйте внедрение, тестируйте и используйте именованные диапазоны для надёжности.
Важное: если в вашей организации много пользователей со старыми версиями Excel, согласуйте стратегию замены формул и подготовьте инструкции с альтернативами.
Краткое объявление (для внутренней рассылки, 100–200 слов):
XLOOKUP теперь доступен в наших шаблонах отчётов (требуется Microsoft 365). Эта функция упрощает поиск данных по строкам и столбцам и позволяет возвращать несколько значений одновременно. При внедрении мы рекомендуем использовать именованные диапазоны и добавлять обработку отсутствующих данных через аргумент if_not_found. Если у вас устаревшая версия Excel, используйте INDEX+MATCH или VLOOKUP, пока не выполните миграцию. Подробный гайд и чек‑лист по миграции доступны в корпоративном репозитории.
Социальный превью:
- Заголовок: XLOOKUP в Excel — полное руководство
- Описание: Научитесь пользоваться XLOOKUP: синтаксис, примеры, ошибки и план миграции.
Краткий словарь терминов
- lookup_value — искомое значение.
- lookup_array — диапазон поиска (ключ).
- return_array — диапазон возврата (ответ).
- if_not_found — значение при отсутствии совпадения.
- match_mode — режим совпадения.
- search_mode — режим поиска.
Итог
XLOOKUP — мощная и гибкая функция. Она упрощает логику поиска и делает формулы устойчивее к изменениям структуры данных. Если у вас есть доступ к Microsoft 365, стоит начать постепенную миграцию отчетов и шаблонов на XLOOKUP.
Похожие материалы
Как установить IIS на Windows
Grubhub+ бесплатно с Amazon Prime — как получить
Strava Beacon: как делиться местоположением
Удалить пустые строки в Excel быстро