MulTEx »

ВПР_МН

Данная функция является частью надстройки MulTEx

MulTEx

Вернуть все найденные значения

 

Если не все, то очень многие из Вас знают функцию ВПР(VLookUp) в Excel. Несомненно очень удобная и нужная функция. Но, думаю, у многих появлялось желание сделать так, чтобы эта чудо-функция возвращала бы не только ПЕРВОЕ найденное значение, но и второе, и третье, и четвертое, и т.д. Короче все найденные значения. И работала бы не с одним критерием, а с несколькими. Как минимум с двумя. Я не был исключением из множества и именно поэтому решил создать аналог ВПР, но с возможностью поиска по двум и более критериям(до 124-х), и возможностью вернуть массив всех найденных значений. Либо n-ное найденное значение..

Вызов команды через стандартный диалог:

Мастер функций-Категория "MulTEx"- ВПР_МН

Вызов с панели MulTEx:

Сумма/Поиск/Функции - Массивы - ВПР_МН

Синтаксис:
=ВПР_МН($A$1:$E$20;J1;1;5;2;K1;">5";3;"реализация*";4)



Диапазон значений($A$1:$E$20) - указывается диапазон, содержащий критерии поиска и искомые значения.

Критерий(J1) - указывается ссылка на ячейку с критерием поиска или непосредственно значение. Допускается применение в критериях символов подстановки - * и ?. Т.е. указав в качестве Критерия "реализация*" в качестве результата будут отобраны ячейки, текст ячеек в столбце критериев которых начинается со слова "реализация".
Так же данный аргумент может принимать в качестве критерия символы сравнения(<, >, =, <>, <=, =>):

  • ">0" - будут отобраны ячейки, значения ячеек критериев для которых больше нуля;
  • ">=2" - будут отобраны ячейки, значения ячеек критериев для которых больше или равно двум;
  • "<0" - будут отобраны ячейки, значения ячеек критериев для которых меньше нуля;
  • "<=60" - будут отобраны ячейки, значения ячеек критериев для которых меньше или равно 60;
  • "<>0" - будут отобраны ячейки, значения ячеек критериев для которых не равно нулю;
  • "<>" - будут отобраны ячейки, значения ячеек критериев для которых не пустые;

Вместо нуля может быть любое число или текст. Так же можно добавить ссылку на ячейку со значением: "<>"&J1

Номер столбца(1) - указывается номер столбца в диапазоне значений, в котором следует искать соответствующий критерий(аналог аргумента Номер_столбца в стандартном ВПР). Если только один критерий, то остальные поля оставляем пустыми. Для Критерия указываем номер столбца в Диапазоне значений(именно номер в Диапазоне значений, а не номер столбца на листе).

Номер столбца искомых значений(5) - указывается номер столбца, значения из которого следует найти. В примере - 5.

Выводить первое значение(2) - способ вывода найденных значений(аналог аргумента Интервальный просмотр в стандартном ВПР).

  • 0 - выводит последнее найденное значение - функция вернет только одно последнее найденное в указанном массиве значение;
  • 1 - выводит первое найденное значение - функция вернет только одно первое найденное в указанном массиве значение;
  • 2 - выводит значение под указанным номером вхождения(если выбран, то необходимо указать Номер вхождения) - функция вернет только одно значение, порядковый номер которого будет равен указанному Вами аргументу Номер вхождения. Т.е. если необходимо вывести только 7-ое найденное значение, указываем Номер вхождения - 7. В качестве данного аргумента можно использовать данные в ячейках - K1. Если номер вхождения не указан - функция вернет значение: Не указан номер вхождения!;
  • -1 - выводит все найденные значения (для этого требуется ввести функцию как формулу массива: Выделить диапазон строк, в которые следует поместить результат. В строку формул ввести данную функцию и нажать Ctrl+Shift+Enter). Подробнее про формулы массива можно прочитать здесь.

Номер вхождения(K1) - Необязательный аргумент. Может быть целым числом, либо ссылкой на ячейку с целым числом. Учитывается только если параметр "Выводить первое значение" равен 2. Если указанный номер вхождения превышает количество найденных значений, то функция вернет 0.

КритерийСтолбец(">5";3;"реализация*";4) - дополнительные критерии и номера столбцов, в которых критерии просматривать. Важно: сначала указывается критерий, затем номер столбца аргумента Диапазон_значений, в котором этот критерий просматривать. Условия использования те же, что и для критериев Критерий и Номер столбца. Допускается до 124 связок Критерий-Номер столбца(т.е. всего 248 аргументов - до 124 Критериев и до 124 Номеров столбцов). Все условия объединены между собой по принципу совпадения И. Если хоть одно условие связки КритерийСтолбец не выполняется, условия расположенные далее по списку не проверяются, общее условие по строке считается как несоответствующее и данные этой строки не будут включены в результат.

Также см.:
Как найти значение в другой таблице или сила ВПР


Расскажи друзьям, если статья оказалась полезной:
Обсуждение: оставлено 30 коммент.
  1. Ася:

    возможно мало исходных данных, может в этом дело.
    У меня в одной таблице такие данные:
    rr2314 50
    rr2314 45
    ou65488 1210
    ww65412 650
    ww65412 10
    ww65412 51
    ww65412 5

    В другой такие:
    ou65488 1209
    ww65412 5
    ww65412 61
    ww65412 650
    rr2314 50
    rr2314 45

    и надо по первому столбцу сопоставить данные вторых столбцов

  2. Вы не могли бы мне на e-mail выслать пример данных и того, как Вы вводите формулу? the-Prist@yandex.ru

  3. prepodobny:

    я приобрел надстройку у меня вопрос по впр2 если мне нужно найти в диапазоне не точное вхождение а определенную последовательность?

  4. prepodobny, а что Вы имеете ввиду под последовательностью? В функции можно применять символы подстановки: * и ?

  5. Серёнька:

    Помогите и мне плз.... почти 2 недели ломаю голову и подставляю различные формулы но ничего не помогает либо не так делаю..... вот что есть
    в одном столбце идут значения подтянутые из файла по первым 8 знакам А1=левсимв(А1;8), они дополняются путем поиска по тем же 8 символам с др страницы. но подставляет он только 1 значение (и почему то последнее вот форм. =ВПР(ЛЕВСИМВ('Вставлять в А2'!A21;9);S:S;1;1)) из нескольки.
    задача: сделать так, чтобы каждая повторяющаяся ранее ячейка (например их всего 20) с идентичным содержанием менялась на сл. по совподению на др стр (их например 6). т.е. выглядеть должно так
    1,2,3,4,5,6,1,2,3,4,5,6,1,2,3...и так до 20 этот пример примитивен но надеюсь понятен...
    формула подставления =ВПР(ЛЕВСИМВ('Вставлять в А2'!A11;8);S:S;1;1)
    массив для подставления FR!A1:C4288
    пример совпадения... по первым 8 символам

    XP7200RS/50B
    XP7200RS/50C
    XP7200RS/70D
    XP7200RS/70E
    XP7200RS/70F
    XP7200RS/70G
    XP7200RU/50C
    XP7200RU/70D
    XP7200RU/70E
    XP7200RU/70F
    XP7200RU/70G

    заранее спасибо.

  6. ВПР возвращает только первое совпадение, если аргумент интервальный_просмотр равен 0. У Вас он равен 1. Почитайте справку. И ВПР не умеет возвращать ВСЕ значения, подходящие под критерий. Именно поэтому я написал эту функцию - ВПР2.

  7. kiritani:

    Здравствуйте, никак не могу понять, что я делаю не так:
    первый столбец A с фразами, второй B с номерами объявлений, и есть список фраз в столбце С, которые необходимо найти в первом столбце (они могут там встречаться больше 1 раза) и вывести все номера объявлений, соответствующие этим фразам.
    Функция получилась такая {=ВПР2($A$1:$C$156851;C2;1;2;-1)}, но она выдает #ЗНАЧ
    Пробовала по разному изменять, но в некоторых случаях выдает 0, в большинстве все равно #ЗНАЧ.
    Подскажите, пожалуйста, я прочитала форум и описание к функции, но никаких полезных идей не появилось и исправить ошибку не удалось..

  8. kiritani, я не могу сказать причину без файла. Вышлите файл мне на почту: the-Prist@yandex.ru
    В файле оставьте формулу так, как Вы её вводите.

  9. Igor:

    =ВПР_МН(AC1806:AD1809;AE1802;1;2;2;2)

    AE1802 = 1
    AC1806:AD1809
    1 A
    1 B
    2 C
    3 D

    Ожидаю по вашему оператору получить результат B, но какие-бы варианты не пробовал получаю 0. Что делаю не так?

Поделитесь своим мнением

Комментарии, не имеющие отношения к комментируемой статье, могут быть удалены без уведомления и объяснения причин. Если есть вопрос по личной проблеме - добро пожаловать на Форум


Для оформления сообщений Вы можете использовать следующие тэги:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Логин
Наши партнеры
Перейти
Перейти
Счетчики
Анализ сайта

Яндекс.Метрика
© 2016 Excel для всех  Войти