Подробный ответ
Функция ИНДЕКС
ИНДЕКС возвращает значение ячейки по её координатам в массиве:
=ИНДЕКС(A1:C10; 3; 2) — вернёт значение 3-й строки и 2-го столбца диапазона.
Функция ПОИСКПОЗ
ПОИСКПОЗ находит позицию значения в диапазоне:
=ПОИСКПОЗ("Яблоко"; A1:A10; 0) — вернёт номер строки, где стоит «Яблоко».
Третий аргумент 0 — точное совпадение (как в ВПР).
Связка ИНДЕКС+ПОИСКПОЗ
=ИНДЕКС(C1:C100; ПОИСКПОЗ(E1; A1:A100; 0)) — ищет значение из E1 в столбце A, а возвращает соответствующее значение из столбца C.
Почему ИНДЕКС+ПОИСКПОЗ лучше ВПР
- Может искать и в левом, и в правом столбце от ключа.
- Не ломается при добавлении столбцов в таблицу.
- Работает быстрее на больших данных.
ПОИСКПОЗможно использовать отдельно.
Двумерный поиск
=ИНДЕКС(B2:D10; ПОИСКПОЗ(G1;A2:A10;0); ПОИСКПОЗ(H1;B1:D1;0)) — находит значение на пересечении нужной строки и столбца, как в таблице умножения.