ЛЕВЫЙ ВПР/VLOOKUP в Google Таблицах (когда искомое значение не в первом столбце)

Если в исходной таблице искомые данные стоят правее тех данных, которые вам нужно возвращать с помощью ВПР / VLOOKUP, можно воспользоваться сочетанием функций ИНДЕКС / INDEX и ПОИСКПОЗ / MATCH (так обычно это решается в Excel).

Но в Google Таблицах можно еще проще решить эту проблему, пересобрав таблицу в правильном порядке в массив внутри ВПР.

Напомню правила формирования массивов в формулах Google Таблиц. Массив берется в фигурные скобки, переход на новую строку - это точка с запятой, переход на новый столбец - обратная косая черта (для российских региональных настроек). То есть следующая формула будет возвращать таблицу 2x2, которую вы видите на скриншоте.

={1 \ 2 ; 3 \ 4}

Таким образом, чтобы внутри функции ВПР создать виртуальную таблицу, в которой сначала будет идти столбец B из исходных данных, а потом столбец A, понадобится следующая конструкция:

=ВПР(A2;{'Прайс-лист'!B:B \ 'Прайс-лист'!A:A};2;0)

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

А еще с помощью этой конструкции можно создать массив только из двух столбцов (столбца поиска и столбца, который будет возвращаться) и не использовать внутри ВПР таблицу из двадцати столбцов. Это может ускорить работу. То есть вместо ссылки вида =ВПР(A1; Данные!A:BZ; ...) вы используете =ВПР(A1; { Данные!A:A \ Данные!AX }; 2; 0)

Рубрики:
Комментарии
2 Цепочка комментария
0 Ответы по цепочке
0 Последователи
 
Популярнейший комментарий
Цепочка актуального комментария
2 Авторы комментариев
Денис

Чертов гений!

holden caulfield

Здравствуйте!

Подскажите, пожалуйста, как правильно реализовать эту формулу, используя в теле ВПР importrange?
Перепробовала некоторое количество вариантов, не работает.(

Неработающие примеры:
=VLOOKUP(A1; IMPORTRANGE("https://docs.google.com/spreadsheets/ххххх";"{Sheet!B:B\Sheet!A:A}");2;0)
=VLOOKUP(A1; IMPORTRANGE("https://docs.google.com/spreadsheets/ххххх";"{'Sheet'!B:B\'Sheet'!A:A}");2;0)

Спасибо!

Темы, на которые я пишу: