Поиск
Поиск в два шага
Определение
INDEX и MATCH вместе сначала находят позицию с помощью MATCH, а затем получают значение на этой позиции с помощью INDEX.
Синтаксис
=INDEX(return_range, MATCH(key, lookup_range, 0))
Аргументы
| Аргумент | Значение |
|---|---|
return_range |
Столбец или строка со значением, которое нужно получить. |
key |
Элемент, который вы ищете. |
lookup_range |
Столбец или строка, содержащая ключ, того же размера, что и диапазон возврата. |
0 |
Заставляет MATCH искать точное совпадение. |
Пример
В прайс-листе цена находится в столбце A, а товар — в столбце B, поэтому ключ расположен справа от ответа.
| A: Цена | B: Товар |
|---|---|
| 29 | Kettle |
| 68 | Blender |
| 53 | Toaster |
Формула: =INDEX(A2:A4,MATCH("Toaster",B2:B4,0))
Результат: 53. MATCH находит Toaster на позиции 3, а INDEX возвращает третью цену, 53, хотя она находится слева от ключа.
Практика
Города Quito, Lima и Bogota записаны в B2:B4, а их высоты в метрах — 2850, 154 и 2640 — в A2:A4. Напишите в D2 формулу, которая возвращает высоту Bogota.
- В D2 напишите формулу INDEX и MATCH, которая возвращает высоту Bogota. Высоты находятся в A2:A4, а города — в B2:B4.
- D2 должна показать высоту Bogota.
Связанные функции
INDEX и MATCH делят поиск на два шага, поэтому каждый можно проверить отдельно, а любой — использовать повторно в другом месте.
Частая ошибка
Использование диапазонов, которые не совпадают по расположению, например INDEX(A2:A4,MATCH(...,B3:B5,0)); позиция смещается на одну строку, и возвращается не тот элемент.