Современная замена VLOOKUP и HLOOKUP — ищите в любом столбце и возвращайте любой столбец в любом направлении.
Синтаксис
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 подстановочные знаки.
XLOOKUP ищет в массиве поиска и возвращает совпадающий элемент из отдельного массива возврата. Он ищет влево или вправо, по умолчанию использует точное совпадение и имеет встроенный аргумент if_not_found, поэтому IFERROR больше не нужен. Доступен в Microsoft 365 и Excel 2021+.
=XLOOKUP(E2, A2:A100, C2:C100, "Not found")→$1,250Сопоставляет ключ в E2 и возвращает цену; показывает "Not found", если он отсутствует.
=XLOOKUP(E2, Names, IDs)→A102Возвращает значение слева от ключа — невозможно с VLOOKUP.
Укажите три массива
Задайте искомое значение, столбец для поиска и столбец для возврата — они могут располагаться в любом порядке.
Добавьте запасное значение
Используйте аргумент if_not_found, чтобы заменить #N/A понятным текстом.
Настройте режим совпадения
Оставьте пустым для точного совпадения или используйте 2 для текстового поиска с подстановочными знаками.
В большинстве случаев да: он ищет в любом направлении, по умолчанию использует точное совпадение, не ломается при вставке столбцов и обрабатывает «не найдено» прямо в формуле. Используйте VLOOKUP только при совместной работе со старыми версиями Excel.
Требуется Microsoft 365 или Excel 2021+. В старых версиях используйте INDEX/MATCH для той же гибкости.