Решён
Как в Excel вернуть значение ячейки из диапазона по условию?

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

Пробовал через IF перебирать, но строк 500 штук, это нереально. Подскажите какую формулу использовать чтобы вернуть значение ячейки из диапазона по совпадению с искомым значением. Excel 2019.

Решение
66
Эксперт • 1 ответ

ВПР тебе в помощь:

=ВПР(искомое_значение; диапазон_таблицы; номер_столбца; 0)

Для твоего случая, если артикулы в A2:A501 и цены в B2:B501, а искать будешь по значению в ячейке D1:

=ВПР(D1; A2:B501; 2; 0)

Последний аргумент 0 означает точное совпадение. Это важно.

Аватар Сергей Петрович

Работает! Спасибо огромное, я даже не знал что такая функция есть

19
Участник • 1 ответ

Если у тебя Excel 365 или 2021, есть еще XLOOKUP (ПРОСМОТРX на русском), она вообще заменяет и ВПР и ИНДЕКС+ПОИСКПОЗ сразу:

=ПРОСМОТРX(D1; A2:A501; B2:B501)

Проще некуда. Но в Excel 2019 этой функции нет, так что для твоей версии ВПР или INDEX/MATCH.

41
Участник • 2 ответа

ВПР это конечно классика, но у нее есть неприятный баг: она ищет только слева направо. То есть искомый столбец обязан быть самым левым в диапазоне.

Если структура таблицы другая или может поменяться, советую сразу привыкать к INDEX+MATCH, это гораздо гибче:

=ИНДЕКС(B2:B501; ПОИСКПОЗ(D1; A2:A501; 0))

Логика: ПОИСКПОЗ находит позицию (строку) артикула в столбце A, а ИНДЕКС по этой позиции вытаскивает значение из столбца B. Работает в любом направлении, в любой структуре таблицы.

8
Эксперт • 1 ответ

Можно еще через СУММЕСЛИ если значения числовые и уникальные:

=СУММЕСЛИ(A2:A501; D1; B2:B501)

Не совсем по назначению функции, но работает и многие так делают.

0
Эксперт • 2 ответа

Вообще в экселе надо было с самого начала учить горячие клавиши и правильно строить модель данных, тогда таких вопросов не возникало бы. ВПР конечно решит задачу, но это симптом, а не причина.

1
Участник • 1 ответ

у меня тоже так было, я через гугл таблицы решил аналогичную проблему там функция vlookup работает точно так же если что

Написать ответ

Премодерация гостей

Вы отвечаете как гость. Ваш ответ будет скрыт до проверки модератором. Чтобы ответ появился сразу и вы получали репутацию — войдите в аккаунт.

Будьте вежливы и соблюдайте правила платформы.