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

INDEX и MATCH в Excel: как использовать для точных и гибких поисков

5 min read Excel Обновлено 15 Dec 2025
INDEX и MATCH в Excel: быстрый поиск
INDEX и MATCH в Excel: быстрый поиск

Как использовать INDEX и MATCH в Excel

Как работают INDEX и MATCH

  • INDEX возвращает значение в таблице на основе номера строки и (опционально) номера столбца.
  • Синтаксис: =INDEX(array, row_num, [column_num])
  • MATCH возвращает относительную позицию элемента в массиве, который совпадает с указанным значением.
  • Синтаксис: =MATCH(lookup_value, lookup_array, [match_type])

Важно: в русской локали Excel имена функций другие: INDEX = ИНДЕКС, MATCH = ПОИСКПОЗ. Примеры ниже используют английские имена функций, как в исходной статье, но в вашей версии Excel замените имена при необходимости.

Простой пример — найти продажу для продукта B

Таблица продаж (диапазоны A2:A4 и B2:B4):

ПродуктПродажи
A100
B200
C300
  1. Сначала найдите номер строки с помощью MATCH:
=MATCH("B", A2:A4, 0)
  • lookup_value: “B”
  • lookup_array: A2:A4
  • match_type: 0 (точное совпадение)

Этот вызов вернёт 2, поскольку “B” находится во второй строке диапазона A2:A4.

  1. Затем используйте INDEX для получения значения продаж по найденному номеру строки:
=INDEX(B2:B4, 2)

Это возвращает 200 — продажи для продукта B.

  1. Объединённая формула в одну строку:
=INDEX(B2:B4, MATCH("B", A2:A4, 0))

Эта формула единственным шагом возвращает 200.

Поиск по нескольким критериям (пример с регионами)

Таблица:

ПродуктРегионПродажи
ANorth100
BSouth200
CEast300
ASouth150

Задача: найти продажи для продукта A в регионе South.

Классический приём — MATCH ищет позицию строки, где одновременно соблюдаются несколько условий. Формула:

=INDEX(C2:C5, MATCH(1, (A2:A5="A")*(B2:B5="South"), 0))

Объяснение:

  • (A2:A5="A") и (B2:B5="South") возвращают массивы TRUE/FALSE.
  • Умножение превращает их в массив из 1 и 0, где 1 — обе проверки истинны.
  • MATCH(1, …, 0) находит позицию первой единицы.
  • INDEX возвращает значение из столбца продаж в этой позиции.

Примечание: в старых версиях Excel нужно вводить такую формулу как массивную (Ctrl+Shift+Enter). В современных версиях с динамическими массивами достаточно обычного Enter.

Дополнительные советы по надёжности

  • Проверьте, что диапазоны по длине совпадают (A2:A5 и B2:B5, а не смешанные размеры).
  • Пользуйтесь абсолютными ссылками ($A$2:$A$5), если копируете формулы.
  • Для точного совпадения всегда указывайте 0 в MATCH.
  • Если возможны пустые строки или дубликаты, заранее решите, как обрабатывать первый найденный результат.

Важно: INDEX+MATCH устойчивее VLOOKUP, потому что не зависит от порядка столбцов и работает быстрее на больших диапазонах.

Когда INDEX + MATCH не подходит

  • Если нужно вернуть несколько совпадающих строк сразу (несколько результатов), простая связка INDEX+MATCH вернёт только первую позицию. Решение: использовать FILTER (в новых Excel) или формулы массивов.
  • Если вам нужно искать слева направо и хочется простого синтаксиса, XLOOKUP может быть удобнее.
  • Для очень больших наборов данных подумайте о Power Query или базе данных — Excel-функции не оптимальны для сложных агрегаций.

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

  • XLOOKUP — современная, более читаемая и гибкая замена (поддерживает поиск по нескольким критериям через логические выражения и возвращает значения слева/справа).
  • VLOOKUP — проще для быстрого поиска, но уязвим при вставке/перестановке столбцов.
  • INDEX + MATCH — лучший выбор, когда нужна скорость и независимость от структуры столбцов.

Шпаргалка формул (часто используемые шаблоны)

Поиск одного значения по ключу:

=INDEX(return_range, MATCH(lookup_value, lookup_range, 0))

Двухмерный поиск (строка и столбец):

=INDEX(table_range, MATCH(row_value, row_headers, 0), MATCH(column_value, column_headers, 0))

Несколько критериев (одно значение):

=INDEX(result_range, MATCH(1, (criteria_range1=crit1)*(criteria_range2=crit2), 0))

Использование с IFERROR для обработки отсутствия совпадений:

=IFERROR(INDEX(...), "Не найдено")

Ментальная модель: как думать об INDEX и MATCH

  • MATCH — это «адрес» (номер строки/позиций). Представьте его как поиск номера дома.
  • INDEX — это «почтальон», который по адресу приносит содержимое (значение ячейки).

Такой способ мышления помогает комбинировать условия и контролировать, что именно возвращается.

Роль‑базовые чеклисты

Для аналитика:

  • Убедиться в уникальности идентификаторов.
  • Зафиксировать диапазоны абсолютными ссылками.
  • Обернуть формулу в IFERROR для читабельности отчёта.

Для разработчика отчётов:

  • Тестировать на краевых данных (пустые, дубликаты).
  • Документировать используемые диапазоны в комментариях/README.

Для менеджера продукта:

  • Проверить, что отчёт соответствует требованиям бизнеса (первый/все/агрегированный результат).
  • Оценить целесообразность перехода на XLOOKUP или Power Query.

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

  • Формула возвращает ожидаемый результат для главного тестового кейса.
  • Формула корректно обрабатывает отсутствие совпадения (возвращает сообщение или пусто).
  • При копировании формулы в соседние ячейки диапазоны остаются корректными (абсолютные ссылки при необходимости).

Частые ошибки и как их избегать

  • Несоответствие размеров lookup_range и return_range — приводят к ошибке или неверным данным.
  • Забытые абсолютные ссылки — формула ломается при копировании.
  • Неправильный match_type — используйте 0 для точного совпадения, иначе результаты могут быть неожиданными.

Быстрая проверка (тесты)

  • Поиск существующего значения — ожидаемый ответ.
  • Поиск отсутствующего значения — IFERROR показывает сообщение.
  • Дубликаты — проверка, что возвращается первая встреченная строка.

Резюме

INDEX и MATCH — гибкий и надёжный инструмент для поиска в Excel. Этот дуэт особенно полезен, когда таблица изменяется, когда требуется двухмерный поиск или поиск по нескольким критериям. Для новых проектов рассмотрите XLOOKUP как более современную альтернативу, но INDEX+MATCH остаётся стандартом для совместимости и контроля.

Если у вас есть конкретная таблица — вставьте её в комментариях, и я помогу составить формулу под ваш кейс.

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

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

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро