Excel впр часть строки

Содержание

  • 1 Основная формула
  • 2 Объяснение
  • 3 Как эта формула работает
    • 3.1 Синтаксис функции ВПР
      • 3.1.1 Пример 1: Ищем текст, начинающийся или заканчивающийся определенными символами
      • 3.1.2 Пример 2: Сочетаем символы подстановки и ссылки на ячейки в формулах с ВПР
    • 3.2 Пример 1: Поиск точного совпадения при помощи ВПР
    • 3.3 Пример 2: Используем ВПР для поиска приблизительного совпадения
  • 4 Как пользоваться функцией ВПР в Excel
  • 5 Быстрое сравнение двух таблиц с помощью ВПР
  • 6 Функция ВПР в Excel с несколькими условиями
  • 7 Функция ВПР и выпадающий список

Основная формула

= ВПР ( значение & «*» ; данные ; столбец ; ЛОЖЬ)

Объяснение

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

В примере, показанном, формула ВПР выглядит следующим образом:

= ВПР ( значение & «*» ; данные ; 2 ; ЛОЖЬ)

В этой формуле, значение представляет собой именованный диапазон, который относится к Н2, а также данные , представляет собой именованный диапазон , который относится к B3: E102. Без названных диапазонов, формула может быть записана следующим образом:

= ВПР ( $H$2 & «*» ; $B$3: $E$102 ; 2 ; ЛОЖЬ )

Как эта формула работает

ВПР поддерживает групповые символы, но только в режиме «точное совпадение». Чтобы установить точное соответствие, убедитесь, что вы поставили 4-ый аргумент ЛОЖЬ или 0.

В этом случае мы поставляем искомое значение как значение & «*» , так что если мы вводим в строку вроде «Ая» в названном диапазоне Значение(H2), мы даем ВПР «Ая*» в качестве значения поиска.

Это приведет к ВПР, чтобы соответствовать первой записи в столбце B, который начинается с «Ая».

Шаблоны также удобны, потому что вам не придется вводить полное имя, но обратите внимание, что вы должны быть осторожны с дубликатами или с рядом дубликатов. Например, в таблице есть «Желонка» и «Бейли», так что набрав «Бай» даст вам первое совпадение, несмотря на то, что есть два.

Примечание: очень важно требовать точного совпадения с использованием ЛЖИ или 0 для последнего аргумента при использовании шаблонов.

Сегодня мы начинаем серию статей, описывающих одну из самых полезных функций Excel – ВПР (VLOOKUP). Эта функция, в то же время, одна из наиболее сложных и наименее понятных.

В этом учебнике по ВПР я постараюсь изложить основы максимально простым языком, чтобы сделать процесс обучения для неискушённых пользователей максимально понятным. Кроме этого, мы изучим несколько примеров с формулами Excel, которые продемонстрируют наиболее распространённые варианты использования функции ВПР.

  • Общее описание и синтаксис
  • Примеры с функцией ВПР
    • Как, используя ВПР, выполнить поиск на другом листе Excel
    • Поиск в другой рабочей книге с помощью ВПР
    • Как использовать именованный диапазон или таблицу в формулах с ВПР
    • Использование символов подстановки в формулах с ВПР
  • Точное или приближенное совпадение в функции ВПР
  • ВПР в Excel – это нужно запомнить!

Функция ВПР в Excel – общее описание и синтаксис

Итак, что же такое ВПР? Ну, во-первых, это функция Excel. Что она делает? Она ищет заданное Вами значение и возвращает соответствующее значение из другого столбца. Говоря техническим языком, ВПР ищет значение в первом столбце заданного диапазона и возвращает результат из другого столбца в той же строке.

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

Первая буква в названии функции ВПР (VLOOKUP) означает Вертикальный (Vertical). По ней Вы можете отличить ВПР от ГПР (HLOOKUP), которая осуществляет поиск значения в верхней строке диапазона – Горизонтальный (Horizontal).

Функция ВПР доступна в версиях Excel 2013, Excel 2010, Excel 2007, Excel 2003, Excel XP и Excel 2000.

Синтаксис функции ВПР

Функция ВПР (VLOOKUP) имеет вот такой синтаксис:

VLOOKUP(lookup_value,table_array,col_index_num,)
ВПР(искомое_значение;таблица;номер_столбца;)

Как видите, функция ВПР в Microsoft Excel имеет 4 параметра (или аргумента). Первые три – обязательные, последний – по необходимости.

  • lookup_value (искомое_значение) – значение, которое нужно искать.Это может быть значение (число, дата, текст) или ссылка на ячейку (содержащую искомое значение), или значение, возвращаемое какой-либо другой функцией Excel. Например, вот такая формула будет искать значение :

    =VLOOKUP(40,A2:B15,2)
    =ВПР(40;A2:B15;2)

Если искомое значение будет меньше, чем наименьшее значение в первом столбце просматриваемого диапазона, функция ВПР сообщит об ошибке #N/A (#Н/Д).

  • table_array (таблица) – два или более столбца с данными.Запомните, функция ВПР всегда ищет значение в первом столбце диапазона, заданного в аргументе table_array (таблица). В просматриваемом диапазоне могут быть различные данные, например, текст, даты, числа, логические значения. Регистр символов не учитывается функцией, то есть символы верхнего и нижнего регистра считаются одинаковыми.Итак, наша формула будет искать значение в ячейках от A2 до A15, потому что A – это первый столбец диапазона A2:B15, заданного в аргументе table_array (таблица):

    =VLOOKUP(40,A2:B15,2)
    =ВПР(40;A2:B15;2)

  • col_index_num (номер_столбца) – номер столбца в заданном диапазоне, из которого будет возвращено значение, находящееся в найденной строке.Крайний левый столбец в заданном диапазоне – это , второй столбец – это , третий столбец – это и так далее. Теперь Вы можете прочитать всю формулу:

    =VLOOKUP(40,A2:B15,2)
    =ВПР(40;A2:B15;2)

    Формула ищет значение в диапазоне A2:A15 и возвращает соответствующее значение из столбца B (поскольку B – это второй столбец в диапазоне A2:B15).

    как сделать впр в excel по частичному совпадению

Если значение аргумента col_index_num (номер_столбца) меньше , то ВПР сообщит об ошибке #VALUE! (#ЗНАЧ!). А если оно больше количества столбцов в диапазоне table_array (таблица), функция вернет ошибку #REF! (#ССЫЛКА!).

  • range_lookup (интервальный_просмотр) – определяет, что нужно искать:
    • точное совпадение, аргумент должен быть равен FALSE (ЛОЖЬ);
    • приблизительное совпадение, аргумент равен TRUE (ИСТИНА) или вовсе не указан.

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

Примеры с функцией ВПР

Я надеюсь, функция ВПР стала для Вас чуть-чуть понятнее. Теперь давайте рассмотрим несколько примеров использования ВПР в формулах с реальными данными.

Как, используя ВПР, выполнить поиск на другом листе Excel

На практике формулы с функцией ВПР редко используются для поиска данных на том же листе. Чаще всего Вы будете искать и извлекать соответствующие значения из другого листа.

Чтобы, используя ВПР, выполнить поиск на другом листе Microsoft Excel, Вы должны в аргументе table_array (таблица) указать имя листа с восклицательным знаком, а затем диапазон ячеек. К примеру, следующая формула показывает, что диапазон A2:B15 находится на листе с именем Sheet2.

=VLOOKUP(40,Sheet2!A2:B15,2)
=ВПР(40;Sheet2!A2:B15;2)

Конечно же, имя листа не обязательно вводить вручную. Просто начните вводить формулу, а когда дело дойдёт до аргумента table_array (таблица), переключитесь на нужный лист и выделите мышью требуемый диапазон ячеек.

Формула, показанная на скриншоте ниже, ищет текст «Product 1» в столбце A (это 1-ый столбец диапазона A2:B9) на листе Prices.

=VLOOKUP("Product 1",Prices!$A$2:$B$9,2,FALSE)
=ВПР("Product 1";Prices!$A$2:$B$9;2;ЛОЖЬ)

как сделать впр в excel по частичному совпадению

Пожалуйста, помните, что при поиске текстового значения Вы обязаны заключить его в кавычки («»), как это обычно делается в формулах Excel.

Для аргумента table_array (таблица) желательно всегда использовать абсолютные ссылки (со знаком $). В таком случае диапазон поиска будет оставаться неизменным при копировании формулы в другие ячейки.

Поиск в другой рабочей книге с помощью ВПР

Чтобы функция ВПР работала между двумя рабочими книгами Excel, нужно указать имя книги в квадратных скобках перед названием листа.

Например, ниже показана формула, которая ищет значение на листе Sheet2 в книге Numbers.xlsx:

=VLOOKUP(40,Sheet2!A2:B15,2)
=ВПР(40;Sheet2!A2:B15;2)

Вот простейший способ создать в Excel формулу с ВПР, которая ссылается на другую рабочую книгу:

  1. Откройте обе книги. Это не обязательно, но так проще создавать формулу. Вы же не хотите вводить имя рабочей книги вручную? Вдобавок, это защитит Вас от случайных опечаток.
  2. Начните вводить функцию ВПР, а когда дело дойдёт до аргумента table_array (таблица), переключитесь на другую рабочую книгу и выделите в ней нужный диапазон поиска.

На снимке экрана, показанном ниже, видно формулу, в которой для поиска задан диапазон в рабочей книге PriceList.xlsx на листе Prices.

как сделать впр в excel по частичному совпадению

Функция ВПР будет работать даже, когда Вы закроете рабочую книгу, в которой производится поиск, а в строке формул появится полный путь к файлу рабочей книги, как показано ниже:

как сделать впр в excel по частичному совпадению

Если название рабочей книги или листа содержит пробелы, то его нужно заключить в апострофы:

=VLOOKUP(40,'Sheet2'!A2:B15,2)
=ВПР(40;'Sheet2'!A2:B15;2)

Как использовать именованный диапазон или таблицу в формулах с ВПР

Если Вы планируете использовать один диапазон поиска в нескольких функциях ВПР, то можете создать именованный диапазон и вводить его имя в формулу в качестве аргумента table_array (таблица).

Чтобы создать именованный диапазон, просто выделите ячейки и введите подходящее название в поле Имя, слева от строки формул.

как сделать впр в excel по частичному совпадению

Теперь Вы можете записать вот такую формулу для поиска цены товара Product 1:

=VLOOKUP("Product 1",Products,2)
=ВПР("Product 1";Products;2)

Большинство имен диапазонов работают для всей рабочей книги Excel, поэтому нет необходимости указывать имя листа для аргумента table_array (таблица), даже если формула и диапазон поиска находятся на разных листах книги. Если же они находятся в разных книгах, то перед именем диапазона нужно указать название рабочей книги, к примеру, вот так:

=VLOOKUP("Product 1",PriceList.xlsx!Products,2)
=ВПР("Product 1";PriceList.xlsx!Products;2)

Так формула выглядит гораздо понятнее, согласны? Кроме того, использование именованных диапазонов – это хорошая альтернатива абсолютным ссылкам, поскольку именованный диапазон не меняется при копировании формулы в другие ячейки. Значит, Вы можете быть уверены, что диапазон поиска в формуле всегда останется корректным.

Если преобразовать диапазон ячеек в полноценную таблицу Excel, воспользовавшись командой Table (Таблица) на вкладке Insert (Вставка), то при выделении диапазона мышью, Microsoft Excel автоматически добавит в формулу названия столбцов (или название таблицы, если Вы выделите всю таблицу).

как сделать впр в excel по частичному совпадению

Готовая формула будет выглядеть примерно вот так:

=VLOOKUP("Product 1",Table46:],2)
=ВПР("Product 1";Table46:];2)

А может даже так:

=VLOOKUP("Product 1",Table46,2)
=ВПР("Product 1";Table46;2)

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

Использование символов подстановки в формулах с ВПР

Как и во многих других функциях, в ВПР Вы можете использовать следующие символы подстановки:

  • Знак вопроса (?) – заменяет один любой символ.
  • Звёздочка (*) – заменяет любую последовательность символов.

Использование символов подстановки в функциях ВПР может пригодиться во многих случаях, например:

  • Когда Вы не помните в точности текст, который нужно найти.
  • Когда Вы хотите найти какое-то слово, которое является частью содержимого ячейки. Знайте, что ВПР ищет по содержимому ячейки целиком, как при включённой опции Match entire cell content (Ячейка целиком) в стандартном поиске Excel.
  • Когда в ячейке содержатся дополнительные пробелы в начале или в конце содержимого. В такой ситуации Вы можете долго ломать голову, пытаясь понять, почему формула не работает.

Пример 1: Ищем текст, начинающийся или заканчивающийся определенными символами

Предположим, что Вы хотите найти определенного клиента в базе данных, показанной ниже. Вы не помните его фамилию, но знаете, что она начинается на «ack». Вот такая формула отлично справится с этой задачей:

=VLOOKUP("ack*",$A$2:$C$11,1,FALSE)
=ВПР("ack*";$A$2:$C$11;1;ЛОЖЬ)

как сделать впр в excel по частичному совпадению

Теперь, когда Вы уверены, что нашли правильное имя, можно использовать эту же формулу, чтобы найти сумму, оплаченную этим клиентом. Для этого достаточно изменить третий аргумент функции ВПР на номер нужного столбца. В нашем случае это столбец C (3-й в диапазоне):

=VLOOKUP("ack*",$A$2:$C$11,3,FALSE)
=ВПР("ack*";$A$2:$C$11;3;ЛОЖЬ)

Вот ещё несколько примеров с символами подстановки:

~ Находим имя, заканчивающееся на «man»:

=VLOOKUP("*man",$A$2:$C$11,1,FALSE)
=ВПР("*man";$A$2:$C$11;1;ЛОЖЬ)

~ Находим имя, начинающееся на «ad» и заканчивающееся на «son»:

=VLOOKUP("ad*son",$A$2:$C$11,1,FALSE)
=ВПР("ad*son";$A$2:$C$11;1;ЛОЖЬ)

~ Находим первое имя в списке, состоящее из 5 символов:

=VLOOKUP("?????",$A$2:$C$11,1,FALSE)
=ВПР("?????";$A$2:$C$11;1;ЛОЖЬ)

Чтобы функция ВПР с символами подстановки работала правильно, в качестве четвёртого аргумента всегда нужно использовать FALSE (ЛОЖЬ). Если диапазон поиска содержит более одного значения, подходящего под условия поиска с символами подстановки, то будет возвращено первое найденное значение.

Пример 2: Сочетаем символы подстановки и ссылки на ячейки в формулах с ВПР

А теперь давайте разберём чуть более сложный пример, как осуществить поиск с помощью функции ВПР по значению в какой-то ячейке. Представьте, что в столбце A находится список лицензионных ключей, а в столбце B список имён, владеющих лицензией. Кроме этого, у Вас есть часть (несколько символов) какого-то лицензионного ключа в ячейке C1, и Вы хотите найти имя владельца.

Это можно сделать, используя вот такую формулу:

=VLOOKUP("*"&C1&"*",$A$2:$B$12,2,FALSE)
=ВПР("*"&C1&"*";$A$2:$B$12;2;FALSE)

Эта формула ищет значение из ячейки C1 в заданном диапазоне и возвращает соответствующее значение из столбца B. Обратите внимание, что в первом аргументе мы используем символ амперсанда (&) до и после ссылки на ячейку, чтобы связать текстовую строку.

Как видно на рисунке ниже, функция ВПР возвращает значение «Jeremy Hill», поскольку его лицензионный ключ содержит последовательность символов из ячейки C1.

как сделать впр в excel по частичному совпадению

Заметьте, что аргумент table_array (таблица) на скриншоте сверху содержит имя таблицы (Table7) вместо указания диапазона ячеек. Так мы делали в предыдущем примере.

Точное или приближенное совпадение в функции ВПР

И, наконец, давайте рассмотрим поподробнее последний аргумент, который указывается для функции ВПРrange_lookup (интервальный_просмотр). Как уже упоминалось в начале урока, этот аргумент очень важен. Вы можете получить абсолютно разные результаты в одной и той же формуле при его значении TRUE (ПРАВДА) или FALSE (ЛОЖЬ).

Для начала давайте выясним, что в Microsoft Excel понимается под точным и приближенным совпадением.

  • Если аргумент range_lookup (интервальный_просмотр) равен FALSE (ЛОЖЬ), формула ищет точное совпадение, т.е. точно такое же значение, что задано в аргументе lookup_value (искомое_значение). Если в первом столбце диапазона table_array (таблица) встречается два или более значений, совпадающих с аргументом lookup_value (искомое_значение), то выбрано будет первое из них. Если совпадения не найдены, функция сообщит об ошибке #N/A (#Н/Д).Например, следующая формула сообщит об ошибке #N/A (#Н/Д), если в диапазоне A2:A15 нет значения :

    =VLOOKUP(4,A2:B15,2,FALSE)
    =ВПР(4;A2:B15;2;ЛОЖЬ)

  • Если аргумент range_lookup (интервальный_просмотр) равен TRUE (ИСТИНА), формула ищет приблизительное совпадение. Точнее, сначала функция ВПР ищет точное совпадение, а если такое не найдено, выбирает приблизительное. Приблизительное совпадение – это наибольшее значение, не превышающее заданного в аргументе lookup_value (искомое_значение).

Если аргумент range_lookup (интервальный_просмотр) равен TRUE (ИСТИНА) или не указан, то значения в первом столбце диапазона должны быть отсортированы по возрастанию, то есть от меньшего к большему. Иначе функция ВПР может вернуть ошибочный результат.

Чтобы лучше понять важность выбора TRUE (ИСТИНА) или FALSE (ЛОЖЬ), давайте разберём ещё несколько формул с функцией ВПР и посмотрим на результаты.

Пример 1: Поиск точного совпадения при помощи ВПР

Как Вы помните, для поиска точного совпадения, четвёртый аргумент функции ВПР должен иметь значение FALSE (ЛОЖЬ).

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

=VLOOKUP(50,$A$2:$B$15,2,FALSE)
=ВПР(50;$A$2:$B$15;2;ЛОЖЬ)

как сделать впр в excel по частичному совпадению

Обратите внимание, что наш диапазон поиска (столбец A) содержит два значения – в ячейках A5 и A6. Формула возвращает значение из ячейки B5. Почему? Потому что при поиске точного совпадения функция ВПР использует первое найденное значение, совпадающее с искомым.

Пример 2: Используем ВПР для поиска приблизительного совпадения

Когда Вы используете функцию ВПР для поиска приблизительного совпадения, т.е. когда аргумент range_lookup (интервальный_просмотр) равен TRUE (ИСТИНА) или пропущен, первое, что Вы должны сделать, – выполнить сортировку диапазона по первому столбцу в порядке возрастания.

Это очень важно, поскольку функция ВПР возвращает следующее наибольшее значение после заданного, а затем поиск останавливается. Если Вы пренебрежете правильной сортировкой, дело закончится тем, что Вы получите очень странные результаты или сообщение об ошибке #N/A (#Н/Д).

как сделать впр в excel по частичному совпадению

Вот теперь можно использовать одну из следующих формул:

=VLOOKUP(69,$A$2:$B$15,2,TRUE) или =VLOOKUP(69,$A$2:$B$15,2)
=ВПР(69;$A$2:$B$15;2;ИСТИНА) или =ВПР(69;$A$2:$B$15;2)

Как видите, я хочу выяснить, у какого из животных скорость ближе всего к милям в час. И вот какой результат мне вернула функция ВПР:

как сделать впр в excel по частичному совпадению

Как видите, формула возвратила результат Антилопа (Antelope), скорость которой миля в час, хотя в списке есть также Гепард (Cheetah), который бежит со скоростью миль в час, а 70 ближе к 69, чем 61, не так ли? Почему так происходит? Потому что функция ВПР при поиске приблизительного совпадения возвращает наибольшее значение, не превышающее искомое.

Надеюсь, эти примеры пролили немного света на работу с функцией ВПР в Excel, и Вы больше не смотрите на неё, как на чужака. Теперь не помешает кратко повторить ключевые моменты изученного нами материала, чтобы лучше закрепить его в памяти.

ВПР в Excel – это нужно запомнить!

  1. Функция ВПР в Excel не может смотреть налево. Она всегда ищет значение в крайнем левом столбце диапазона, заданного аргументом table_array (таблица).
  2. В функции ВПР все значения используются без учета регистра, то есть маленькие и большие буквы эквивалентны.
  3. Если искомое значение меньше минимального значения в первом столбце просматриваемого диапазона, функция ВПР сообщит об ошибке #N/A (#Н/Д).
  4. Если 3-й аргумент col_index_num (номер_столбца) меньше , функция ВПР сообщит об ошибке #VALUE! (#ЗНАЧ!). Если же он больше количества столбцов в диапазоне table_array (таблица), функция сообщит об ошибке #REF! (#ССЫЛКА!).
  5. Используйте абсолютные ссылки на ячейки в аргументе table_array (таблица), чтобы при копировании формулы сохранялся правильный диапазон поиска. Попробуйте в качестве альтернативы использовать именованные диапазоны или таблицы в Excel.
  6. Когда выполняете поиск приблизительного совпадения, не забывайте, что первый столбец в исследуемом диапазоне должен быть отсортирован по возрастанию.
  7. И, наконец, помните о важности четвертого аргумента. Используйте значения TRUE (ИСТИНА) или FALSE (ЛОЖЬ) обдуманно, и Вы избавитесь от многих головных болей.

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

Урок подготовлен для Вас командой сайта office-guru.ru
Источник: /> Перевел: Антон Андронов

Правила перепечаткиЕще больше уроков по Microsoft Excel

Оцените качество статьи. Нам важно ваше мнение:

Функция ВПР (VLOOKUP) в Excel используется для поиска данных из одной таблицы и сопоставления их с данными из другой таблицы.

Кликните по кнопке ниже для загрузки Excel файла с примерами работы функции ВПР:

Видео-урок: Как использовать функцию ВПР в Excel Функция ВПР в Excel для чайников

На примере ниже, в таблице справа, мы хотим подставить данные результатов экзамена по математике для студента Сидорова. Нам известны данные по всем студентам из таблицы слева. Используя формулу, мы можем подставить необходимые для нас данные.

как сделать впр в excel по частичному совпадению

Синтаксис

=VLOOKUP(lookup_value, table_array, col_index_num, ) – английская версия

=ВПР(искомое_значение, таблица, номер_столбца, ) – русская версия

Аргументы функции

  • lookup_value (искомое_значение) – это величина для поиска, из крайнего левого столбца таблицы. Это может быть значение, ссылка на ячейку или текстовая строка. В примере со студентами это их фамилии;
  • table_array (таблица) – это диапазон данных, в котором будет осуществлен поиск. Это может быть ссылка на диапазон ячеек или именованный диапазон. В примере с таблицей со студентами, это будет вся таблица, которая содержит оценку и фамилии студентов;
  • col_index (номер_столбца) – это порядковый номер столбца в диапазоне с данными, из которого будет получена искомая величина;
  •  () – этот аргумент указывает на точность совпадения данных при поиске. Укажите “0” – если точное, “1” – если приблизительное совпадение.

Дополнительная информация

  • совпадение искомых данных может быть точным и приблизительным;
  • при сопоставлении по приблизительной точности данных убедитесь, что данные в таблицах отсортированы в убывающем порядке (от большого к малому). Иначе, результат сопоставления будет некорректным;
  • при сопоставлении данных по приблизительной точности:
    – если функция не найдет искомое значение, она выдаст наибольшую величину, которая будет меньше чем значения поиска;
    – если функция при сопоставлении выдает ошибку #N/A, то искомое значение меньше чем самая маленькая величина в искомом диапазоне;
    – вы можете использовать подстановочные знаки для искомых значений.

Примеры использования ВПР в Excel Пример 1. Ищем результат экзамена для студента

На примере ниже, в левой колонке таблицы указан список студентов. В правой части таблицы указаны итоговые баллы по экзаменам этих студентов.

как сделать впр в excel по частичному совпадению

Перед нами стоит задача узнать, какой балл получил студент Петров по Физике.

Узнать это мы можем с помощью формулы ниже:

=VLOOKUP(“Петров”,$A$3:$E$10,3,0) – английская версия

=ВПР(“Петров”;$A$3:$E$10;3;0) – русская версия

Формула выше состоит из четырех аргументов:

  • “Петров” – фамилия, данные по которой, ищем;
  • $A$3:$E$10 – диапазон данных с результатами экзаменов;
  • “3” –  порядковый номер столбца диапазона данных со значением оценки по Физике;
  • “0” –  точное совпадение искомого значения.

Ниже, наглядно изображено как работает по примеру наша функция.

Сначала, она ищет в крайней левой колонке диапазона данных фамилию “Петров”. Поиск происходит сверху вниз.

как сделать впр в excel по частичному совпадению

Как только Excel нашел точное совпадение “Петров” в диапазоне данных, система “шагает” в право, на третью колонку для отображения искомых данных.

как сделать впр в excel по частичному совпадению

Используя этот подход вы можете получить любые данные по каждому студенту и учебному предмету.

Например, чтобы найти результаты экзамена для студента Пескова по Химии, нам нужна формула:

=VLOOKUP(“Песков”,$A$20:$E$28,4,0) – английская версия

=ВПР(“Песков”;$A$20:$E$28;4;0) – русская версия

как сделать впр в excel по частичному совпадению

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

Например, если у вас есть ячейка с фамилией, и вы ищете оценку по математике, результат будет автоматически обновляться при изменении имени учащегося (как показано ниже):

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

Пример 2. Двухфакторный поиск данных

На примере выше мы указывали вручную в качестве атрибута “номер_столбца” порядковый номер колонки с данными.

Но что, если мы хотим сделать поиск динамическим? Что если, мы хотим вводить имя студента и название предмета и функция автоматически выведет нужные данные? Для этого нам потребуется использовать двухфакторный поиск.

Ниже пример двухфакторного поиска:

Чтобы сделать двухфакторную формулу поиска, важно сделать выбор данных из колонок динамическим. Так, когда пользователь меняет название предмета: Физика, Математика и т.д., в формуле изменяется соответствующий атрибут столбца с данными.

Чтобы сделать это, нам потребуется функция MATCH (ПОИСКПОЗ) в качестве аргумента отвечающего за порядковый номер колонки.

Так будет выглядеть формула для двухфакторного поиска:

=VLOOKUP($G$5,$A$4:$E$12,MATCH($H$4,$A$3:$E$3,0),0) – английская версия

=ВПР($G$5;$A$4:$E$12;ПОИСКПОЗ($H$4;$A$3:$E$3;0);0) – русская версия

В формуле выше используется функция MATCH (ПОИСКПОЗ), которая отвечает за порядковый номер колонки с данными. MATCH (ПОИСКПОЗ) принимает название учебного предмета как значение поиска (в ячейке “H4”) и возвращает его позицию в диапазоне ячеек “A2:E2”.

Если указать “Математика”, Excel вернет “2”, поскольку “Математика” находится в ячейке “B2” (вторая по счету в этом массиве).

Пример 3. Используем выпадающий список при двухфакторном поиске

Используя способ из примера №2, нам требуется делать много ручной работы. Высок риск допустить ошибку и потратить много времени, особенно, если вы работаете с большим объемом данных.

Здесь лучше использовать выпадающие списки как значения для поиска (в нашем примере это фамилии студентов и учебные предметы).

Основываясь на тех данных, что вы выберете из выпадающего списка, функция автоматически выведет необходимые данные, как это указано на примере ниже:

Такой подход позволяет создать дашборд, с помощью которого вы легко сможете обрабатывать большие списки с данными.

Ниже мы рассмотрим, как сделать такую таблицу.

Для этого нам потребуется формула из Примера №2:

=VLOOKUP($G$5,$A$4:$E$12,MATCH($H$4,$A$3:$E$3,0),0) – английская версия

=ВПР($G$5;$A$4:$E$12;ПОИСКПОЗ($H$4;$A$3:$E$3;0);0) – русская версия

Данные поиска были преобразованы в выпадающие списки.

Чтобы сделать выпадающий список, нужно:

  • Выбрать ячейку, в которой вы хотите создать выпадающий список. В нашем примере в ячейке “G4” мы указали фамилии студентов.
  • Перейти к вкладке Данные -> Проверка данных.
  • В диалоговом окне «Проверка данных» на вкладке «Настройки» выбрать «Список» и в раскрывающемся списке выберите «Разрешить».
  • В источнике выбрать $A$3:$A$10
  • Нажать «ОК».

Теперь у вас появится раскрывающийся список в ячейке “G4”. Аналогично, вы можете создать его в “H3” для предметов.

Пример 4. Трехфакторный поиск данных ВПР

Что такое трехфакторный поиск?

В Примере 2 мы использовали одну таблицу с оценками для студентов по разным предметам. Это пример двухфакторного поиска, поскольку мы используем две переменные для получения оценки (фамилия студента и предмет).

Теперь предположим, что к концу года студент прошел три уровня экзаменов: «Вступительный», «Полугодовой» и «Финальный экзамен».

Трехсторонний поиск – это возможность получить отметки студента по предмету с определенным уровнем экзамена.

Вот пример трехстороннего поиска:

В приведенном выше примере, функция ищет данные в трех разных таблицах с данными («Вступительный», «Полугодовой» и «Финальный экзамен») и возвращает значения оценок студента по определенному предмету по конкретному уровню экзамена.

Для таких расчетов нам поможет формула:

=VLOOKUP(G5,CHOOSE(IF(H3=”Вступительный”,1,IF(H3=”Полугодовой”,2,3)),$A$4:$E$12,$A$16:$E$24,$A$28:$E$36),MATCH(H4,$A$3:$E$3,0),0) – английская версия

=ВПР(G5;ВЫБОР(ЕСЛИ(H3=”Вступительный”;1;ЕСЛИ(H3=”Полугодовой”;2;3));$A$4:$E$12;$A$16:$E$24;$A$28:$E$36);ПОИСКПОЗ(H4;$A$3:$E$3;0);0) – русская версия

Эта формула использует функцию CHOOSE (ВЫБОР), чтобы убедиться, что данные выбраны из правильной таблицы. Давайте проанализируем часть формулы CHOOSE (ВЫБОР):

CHOOSE(IF(H3=”Вступительный”,1,IF(H3=”Полугодовой”,2,3)),$A$4:$E$12,$A$16:$E$24,$A$28:$E$36),MATCH(H4,$A$3:$E$3,0),0) – английская версия

ВЫБОР(ЕСЛИ(H3=”Вступительный”;1;ЕСЛИ(H3=”Полугодовой”;2;3));$A$4:$E$12;$A$16:$E$24;$A$28:$E$36);ПОИСКПОЗ(H4;$A$3:$E$3;0);0) – русская версия

Первый аргумент формулы (IF(H3=”Вступительный”,1,IF(H3=”Полугодовой”,2,3) или (ЕСЛИ(H3=”Вступительный”;1;ЕСЛИ(H3=”Полугодовой”;2;3) проверяет ячейку “H3” и определяет, на какой уровень экзамена ссылаются. Если это “Вступительный”, функция возвращает данные из диапазона $A$4:$E$12, который содержит оценки для вступительного экзамена.

Если выбран уровень “Полугодовой”, то система возвращает данные из диапазона $A$16:$E$24, в другом случае она возвращает данные из диапазона $A$28:$E$36.

Такой подход делает массив таблиц динамическим и трехфакторным.

Пример 5. Получаем последнее значение колонки с помощью функции VLOOKUP (ВПР)

С помощью ВПР вы можете вычислить последнее число из списка.

Наибольшее положительное число, которое вы можете использовать в Excel, равно 9.99999999999999E + 307. Это также означает, что самый большой номер поиска в номере VLOOKUP также 9.99999999999999E + 307.

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

Предположим, у вас есть набор данных (в диапазоне ячеек A1:A14), как показано ниже, и вы хотите получить число из последней ячейки в списке.

как сделать впр в excel по частичному совпадению

Для этого нам подойдет следующая формула:

=VLOOKUP(9.99999999999999E+307,$A$1:$A$14,TRUE) – английская версия

=ВПР(9.99999999999999E+307;$A$1:$A$14;ИСТИНА)

Обратите внимание, что в формуле выше используется приблизительная точность совпадения данных (несмотря на это нет необходимости упорядочивать список).

Вот как работает функция с приблизительной точностью совпадения данных. Она просматривает левую колонку сверху вниз.

  • Если он находит точное совпадение, она возвращает это значение;
  • Если она находит число, превышающее значение поиска => возвращает число в ячейке над ним;
  • Если значение поиска больше всех чисел в списке, функция возвращает последнее число из списка.

В нашем примере работает третий сценарий.

Число 9.99999999999999E + 307 это самое большое число, которое можно использовать в Excel, когда оно используется как критерий поиска, тогда функция VLOOKUP (ВПР) возвращает последнее число из списка.

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

=VLOOKUP(“яяя”,$A$1:$A$14,1,TRUE) – английская версия

=ВПР(“яяя”;$A$1:$A$14;1;ИСТИНА) – русская версия

Здесь действует та же логика. Система просматривает все названия из списка. Так как “яяя” самое большое текстовое значение => результатом вычисления будет самое крайнее значение из списка данных.

Пример 6. Частичный поиск с использованием символов подстановочных знаков и ВПР

Символы подстановки в Excel могут быть полезными во многих ситуациях.

Частичный поиск необходим, когда вам нужно искать значение в списке, в котором нет точного соответствия искомым данным.

Например, у вас есть набор данных, как показано ниже, и вы хотите найти компанию “ABC” в списке, но в списке есть только “ABC Ltd” вместо “ABC”.

как сделать впр в excel по частичному совпадению

Вы не можете использовать “ABC” в качестве значения поиска, так как в столбце “A” нет точного соответствия. Приблизительное совпадение часто приводит к ошибочным результатам и требует сортировки списка в порядке возрастания.

Однако, вы можете использовать подстановочный знак в VLOOKUP (ВПР) для более точного соответствия данных.

Введите следующую формулу в ячейку “D2” и перетащите ее в другие ячейки:

=VLOOKUP(“*”&C2&”*”,$A$2:$A$8,1,FALSE) – английская версия

=ВПР(“*”&C2&”*”;$A$2:$A$8;1;ЛОЖЬ) – русская версия

как сделать впр в excel по частичному совпадению

Как это работает?

В формуле, указанной выше мы добавили к значению поиска “звездочки” с двух сторон. Указывая такие “звездочки” вы даете Excel понять, что готовы осуществить поиск, при котором в искомых данных как в начале так и в конце значения могут быть любые другие слова, буквы или цифры.

Таким образом, осуществляя поиск, Excel будет понимать, что необходимо искать значение, которое содержит слово из ячейки “С2” (в нашем примере).

Например, в ячейке “C2” указано название компании “ABC”, поэтому функция просматривает значения в диапазоне данных  “A2:A8” и ищет “ABC”. Она находит соответствие в ячейке “A2”, так как та содержит слово “ABC” в “ABC Ltd”. Не имеет значения, есть ли какие-либо символы слева или справа от “ABC”.

Примечание: ВПР всегда возвращает первое совпадающее значение и перестает искать дальше. Поэтому, если у вас есть название компании “ABC Ltd”. и “ABC Corporation” в списке, она вернет первый по порядку и проигнорирует остальные.

Пример 7. Функция ВПР возвращает ошибку, несмотря на совпадение в значении поиска

Это может свести вас с ума, когда вы увидите, что имеется соответствующее значение поиска, а функция возвращает ошибку.

Например, у вас в таблице есть очевидное соответствие (Иван), но система по-прежнему возвращает ошибку.

Рассматривая значения в таблице глубже, вы можете заметить, что в диапазоне данных значение “Иван “ написано с пробелом. Если в диапазоне данных по которым вы осуществляете поиск есть пробелы до значений, после или между словами, то функция их не сопоставит.

Решение есть, и зовут его – функция TRIM. Она удаляет все лишние пробелы в значениях.

Ниже формула, которая поможет вам сопоставить данные несмотря на лишние пробелы в диапазоне данных.

=VLOOKUP(“Иван”,TRIM($A$2:$A$15),1,0) – английская версия

=ВПР(“Иван”,СЖПРОБЕЛЫ($A$2:$A$15);1;0) – русская версия

Для того, чтобы функция TRIM (СЖПРОБЕЛЫ) заработала при использовании VLOOKUP (ВПР), следует вводить формулу после набора не с помощью клавиши Enter на клавиатуре, а с помощью сочетания клавиш Ctrl + Shift + Enter.

Пример 8. Функция ВПР в Excel с несколькими условиями

Функция в своей базовой форме может искать одно значение поиска и возвращать соответствующие данные из указанного диапазона данных.

Но часто нам необходимо использовать VLOOKUP с поиском по несколькими критериям.

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

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

Осуществить поиск по студенту + названию предмета + уровню экзамена можно с помощью создания вспомогательного столбца, как показано на примере ниже:

Теперь, нам необходимо создать уникальный ID для каждого студента и уровня экзамена с помощью формулы в вспомогательном столбце: =A2&”|”&B2.

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

Благодаря вспомогательному столбцу мы избежали того, что при сопоставлении данных, функция будет выдавать данные по не нужному уровню экзамена.

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

Ниже формула, с помощью которой удобно сопоставлять данные из вашей таблицы в список студентов, распределенных по уровню экзамена.

=VLOOKUP($F3&”|”&G$2,$C$2:$D$19,2,0) – английская версия

=ВПР($F3&”|”&G$2;$C$2:$D$19;2;0) – русская версия

С помощью этой формулы мы объединили имя студента и уровень экзамена, чтобы получить значение поиска которое мы проверяем его в вспомогательном столбце и получить данные.

Пример 9. Обработка ошибок с помощью функции ВПР

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

В Excel есть возможность заменить сообщения об ошибке на заданное вами текстовое или числовое значение типа “Нет”, “Не доступно”, “Нет данных” и.т.д.

На примере ниже, мы пытаемся сопоставить результаты экзамена студента Ивана из таблицы. Но так как данных по Ивану в таблице нет, функция выдает ошибку.

Для того, чтобы заменить сообщение ошибки на какое-то более формальное значение нам поможет функция ЕСЛИОШИБКА(IFERROR):

=IFERROR(VLOOKUP(D2,$A$2:$B$7,2,0),”Нет данных”) – английская версия

=ЕСЛИОШИБКА(ВПР(D2;$A$2:$B$7;2;0);”Нет данных”) – русская версия

Функция ЕСЛИОШИБКА(IFERROR) проверяет, если в результате вычислений по формуле выдается ошибка, то она выдает то значение, которое вы указали в функции ЕСЛИОШИБКА(IFERROR), например “Нет данных”.

Функция ВПР в Excel позволяет данные из одной таблицы переставить в соответствующие ячейки второй. Ее английское наименование – VLOOKUP.

Очень удобная и часто используемая. Т.к. сопоставить вручную диапазоны с десятками тысяч наименований проблематично.

Допустим, на склад предприятия по производству тары и упаковки поступили материалы в определенном количестве.

Стоимость материалов – в прайс-листе. Это отдельная таблица.

Необходимо узнать стоимость материалов, поступивших на склад. Для этого нужно подставит цену из второй таблицы в первую. И посредством обычного умножения мы найдем искомое.

Алгоритм действий:

  1. Приведем первую таблицу в нужный нам вид. Добавим столбцы «Цена» и «Стоимость/Сумма». Установим денежный формат для новых ячеек.
  2. Выделяем первую ячейку в столбце «Цена». В нашем примере – D2. Вызываем «Мастер функций» с помощью кнопки «fx» (в начале строки формул) или нажав комбинацию горячих клавиш SHIFT+F3. В категории «Ссылки и массивы» находим функцию ВПР и жмем ОК. Данную функцию можно вызвать перейдя по закладке «Формулы» и выбрать из выпадающего списка «Ссылки и массивы».
  3. Откроется окно с аргументами функции. В поле «Искомое значение» — диапазон данных первого столбца из таблицы с количеством поступивших материалов. Это те значения, которые Excel должен найти во второй таблице.
  4. Следующий аргумент – «Таблица». Это наш прайс-лист. Ставим курсор в поле аргумента. Переходим на лист с ценами. Выделяем диапазон с наименованием материалов и ценами. Показываем, какие значения функция должна сопоставить.
  5. Чтобы Excel ссылался непосредственно на эти данные, ссылку нужно зафиксировать. Выделяем значение поля «Таблица» и нажимаем F4. Появляется значок $.
  6. В поле аргумента «Номер столбца» ставим цифру «2». Здесь находятся данные, которые нужно «подтянуть» в первую таблицу. «Интервальный просмотр» — ЛОЖЬ. Т.к. нам нужны точные, а не приблизительные значения.

Нажимаем ОК. А затем «размножаем» функцию по всему столбцу: цепляем мышью правый нижний угол и тянем вниз. Получаем необходимый результат.

Теперь найти стоимость материалов не составит труда: количество * цену.

Функция ВПР связала две таблицы. Если поменяется прайс, то и изменится стоимость поступивших на склад материалов (сегодня поступивших). Чтобы этого избежать, воспользуйтесь «Специальной вставкой».

  1. Выделяем столбец со вставленными ценами.
  2. Правая кнопка мыши – «Копировать».
  3. Не снимая выделения, правая кнопка мыши – «Специальная вставка».
  4. Поставить галочку напротив «Значения». ОК.

Формула в ячейках исчезнет. Останутся только значения.

Быстрое сравнение двух таблиц с помощью ВПР

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

  1. В старом прайсе делаем столбец «Новая цена».
  2. Выделяем первую ячейку и выбираем функцию ВПР. Задаем аргументы (см. выше). Для нашего примера: . Это значит, что нужно взять наименование материала из диапазона А2:А15, посмотреть его в «Новом прайсе» в столбце А. Затем взять данные из второго столбца нового прайса (новую цену) и подставить их в ячейку С2.

Данные, представленные таким образом, можно сопоставлять. Находить численную и процентную разницу.

Функция ВПР в Excel с несколькими условиями

До сих пор мы предлагали для анализа только одно условие – наименование материала. На практике же нередко требуется сравнить несколько диапазонов с данными и выбрать значение по 2, 3-м и т.д. критериям.

Таблица для примера:

Предположим, нам нужно найти, по какой цене привезли гофрированный картон от ОАО «Восток». Нужно задать два условия для поиска по наименованию материала и по поставщику.

Дело осложняется тем, что от одного поставщика поступает несколько наименований.

  1. Добавляем в таблицу крайний левый столбец (важно!), объединив «Поставщиков» и «Материалы».
  2. Таким же образом объединяем искомые критерии запроса:
  3. Теперь ставим курсор в нужном месте и задаем аргументы для функции: . Excel находит нужную цену.

Рассмотрим формулу детально:

  1. Что ищем.
  2. Где ищем.
  3. Какие данные берем.

Функция ВПР и выпадающий список

Допустим, какие-то данные у нас сделаны в виде раскрывающегося списка. В нашем примере – «Материалы». Необходимо настроить функцию так, чтобы при выборе наименования появлялась цена.

Сначала сделаем раскрывающийся список:

  1. Ставим курсор в ячейку Е8, где и будет этот список.
  2. Заходим на вкладку «Данные». Меню «Проверка данных».
  3. Выбираем тип данных – «Список». Источник – диапазон с наименованиями материалов.
  4. Когда нажмем ОК – сформируется выпадающий список.

Теперь нужно сделать так, чтобы при выборе определенного материала в графе цена появлялась соответствующая цифра. Ставим курсор в ячейку Е9 (где должна будет появляться цена).

  1. Открываем «Мастер функций» и выбираем ВПР.
  2. Первый аргумент – «Искомое значение» — ячейка с выпадающим списком. Таблица – диапазон с названиями материалов и ценами. Столбец, соответственно, 2. Функция приобрела следующий вид: .
  3. Нажимаем ВВОД и наслаждаемся результатом.

Изменяем материал – меняется цена:

Скачать пример функции ВПР в Excel

Так работает раскрывающийся список в Excel с функцией ВПР. Все происходит автоматически. В течение нескольких секунд. Все работает быстро и качественно. Нужно только разобраться с этой функцией.

Частичное совпадение с ВПР

Бывают случаи, когда вам нужен Excel для извлечения данных на основе частичной информации. Для решения проблемы можно использовать ВПР формула вместе с подстановочными знаками — звездочка (*) и вопросительный знак (?).

частичное совпадение с vlookup 1

Как выполнить частичное совпадение с ВПР?

Чтобы получить информация о товарах и продажах, осуществленных продавцом, в названии которого есть слово «эль», из таблицы, как показано выше, вы должны знать, как использовать подстановочный знак — звездочка (*), который соответствует любому количеству символов. В приведенном выше случае вы можете поместить «эль» между двумя звездочками («* эль *«) для соответствия всем именам, содержащим из. После того, как мы разберемся с использованием подстановочных знаков, мы можем использовать функцию ВПР, чтобы применить частичное совпадение.

Советы для других случаев: сопоставьте имена, начните с эля, используйте «эль *»; Сопоставьте имена, которые закончить элем, используйте «* ale»; Сопоставьте имена, которые в них 2–4 буквы — эль, используйте «? ale *». Обратите внимание, что один вопросительный знак соответствует одному символу.

Общий синтаксис

=VLOOKUP(lookup_value,table_array,column_num,FALSE)

  • искомое_значение: Значение VLOOKUP, используемое для частичного совпадения в таблица_массив. Здесь имеется в виду название содержит «эль». В искомое_значение должен быть в крайнем левом столбце таблица_массив.
  • таблица_массив: Диапазон ячеек, из которых нужно смотреть.
  • номер_столбца: Номер столбца в таблица_массив содержащий возвращаемое значение.

Чтобы получить информация о товарах и продажах, осуществленных продавцом, в названии которого есть слово «эль», скопируйте или введите приведенные ниже формулы в ячейки G7 и G8 и нажмите Enter чтобы получить результат:

Ячейка G7 = ВПР («* эль *»,B5: D11,2,ЛОЖНЫЙ)
Ячейка G8 = ВПР («* эль *»,B5: D11,3,ЛОЖНЫЙ)

Или используйте ссылку на ячейку, чтобы сделать формулы динамическими:

Ячейка G7 = ВПР («*» & G5 & «*»,B5: D11,2,ЛОЖНЫЙ)
Ячейка G8 = ВПР («*» & G5 & «*»,B5: D11,3,ЛОЖНЫЙ)

√ Примечание: чтобы склеить ссылку на ячейку и текст, вы должны использовать амперсанд (&), чтобы соединить их. И текст должен быть заключен в двойные кавычки.

частичное совпадение с vlookup 2

Пояснение формулы

Здесь мы используем формулу ниже в качестве примера:

=VLOOKUP(«*»&G5&»*»,B5:D11,2,FALSE)

  • The lookup value «*»&G5&»*» («*ale*») can match any names that contain the string “ale”, no matter what position the string is in the names.
  • The range_lookup FALSE asks the VLOOKUP function to find the exact match.
  • The VLOOKUP function will then return the value that matches «*»&G5&»*» and is in the 2nd column of the range B5:D11, which is Ruler, Glue, Notebook.

Связанные функции

Функция ВПР в Excel

Функция ВПР в Excel выполняет поиск значения по первому столбцу таблицы и возвращает соответствующее значение из определенного столбца в той же строке.


Связанные формулы

Найдите первое частичное совпадение

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

Поиск с учетом регистра

Возможно, вы знаете, что можете комбинировать функции ИНДЕКС и ПОИСКПОЗ или использовать функцию ВПР для поиска значений в Excel. Однако при поиске регистр не учитывается. Итак, чтобы выполнить сопоставление с учетом регистра, вы должны воспользоваться функциями EXACT и CHOOSE.


Лучшие инструменты для работы в офисе

Kutools for Excel — Помогает вам выделиться из толпы

Хотите быстро и качественно выполнять свою повседневную работу? Kutools for Excel предлагает 300 мощных расширенных функций (объединение книг, суммирование по цвету, разделение содержимого ячеек, преобразование даты и т. д.) и экономит для вас 80 % времени.

  • Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
  • Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
  • Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
  • 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.

Лента Excel (с Kutools for Excel установлены)


Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)

  • Одна секунда для переключения между десятками открытых документов!
  • Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
  • Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
  • Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.

Снимок экрана Excel (с установленной вкладкой Office)

А вы знали, что критерием поиска в ВПР или СУММЕСЛИ / СЧЁТЕСЛИ и т.д. может быть часть ячейки?

Покажу на примере.

Пример с функцией ВПР

Предположим, в желтую ячейку нужно вывести день рождения сотрудницы по имени Ирина. Критерий поиска — только имя.

Но ведь в таблице-источнике, в которой мы будем искать совпадение — нет столбца Имя. Только ФИО.

Фишка ВПР и СЧЁТЕСЛИ, о которой я узнала через 15 лет работы в Excel

Если сразу хочется разделить столбец ФИО на Фамилию, имя и отчество и уже оттуда тянуть — не торопитесь.

Напишем в желтую ячейку формулу:

=ВПР(«*ирина*»;C2:D11;2;0)

где «*ирина*» — и есть тот самый критерий поиска по части ячейки.

Здесь используются два значка-оператора — кавычки и звездочка.

  • звездочка — заменяет любое количество символов. Т.е.перед и после слова ирина может находиться любое количество любых символов.
  • кавычки «» — обязательно ставятся для текстового аргумента поиска в функциях excel.

Остальные аргументы стандартные для функции ВПР:

C2:D11 — таблица для поиска, здесь ее не закрепляем абсолютными ссылками, т.к. копировать формулу не будем.

— номер столбца в таблице, из которого будут возвращаться данные.

0 — аргумент интервальный просмотр.

Как видите, день рождения сотрудницы по имени Ирина (Лесиченко Ирина Ивановна) подтянулся правильно.

Фишка ВПР и СЧЁТЕСЛИ, о которой я узнала через 15 лет работы в Excel

Пример с функцией СЧЁТЕСЛИ

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

Напишем формулу:

=СЧЁТЕСЛИ(C2:C11;»*елена*»)

Где

C2:C11 — диапазон для поиска

«*елена*» — критерий поиска, образованный по тому же принципу, что и для предыдущего примера. Формула будет искать все ячейки, в которых содержится «елена» в любой части ячейки, и вернет их количество.

Фишка ВПР и СЧЁТЕСЛИ, о которой я узнала через 15 лет работы в Excel

Формула посчитала значение 3 — и действительно, в списке три сотрудницы с таким именем.

Аналогично этот прием работает в функциях СУММЕСЛИ и СУММЕСЛИМН.

Ловушка этого способа

В эту ловушку я тоже попадала.

Будьте внимательны, если задаете в качестве критерия поиска слово, которое предположительно может быть частью другого слова.

Например, я считала количество сотрудников с именем Петр (буква ё не использовалась).

Критерием для функции СЧЁТЕСЛИ был «*петр*». И конечно, результатом расчета функции были не только все Петры, но и Петровы, Петровичи и Петровны, поскольку «Петр» является частью этих слов-отчеств.

В таком случае после слова-критерия (или перед ним) нужно поставить пробел. В данном случае, критерием поиска будет «*Петр *» (с пробелом перед второй звездочкой).

Вам может быть интересно:

На чтение 10 мин Просмотров 13.8к. Опубликовано 31.07.2020

Содержание

  1. 5 thoughts on “ «ВПР» по частичному совпадению ”
  2. Проверяем условие для полного совпадения текста.
  3. ЕСЛИ + СОВПАД
  4. Использование функции ЕСЛИ с частичным совпадением текста.
  5. ЕСЛИ + ПОИСК
  6. ЕСЛИ + НАЙТИ
  7. Примеры использования функции ПОИСКПОЗ в Excel
  8. Формула для поиска неточного совпадения текста в Excel
  9. Сравнение двух таблиц в Excel на наличие несовпадений значений
  10. Поиск ближайшего большего знания в диапазоне чисел Excel
  11. Особенности использования функции ПОИСКПОЗ в Excel

Спустя катастрофически большой промежуток времени с момента публикации моего последнего поста, решил поделиться супер крутой, на мой взгляд, Excel-формулой, узнав о которой, начинаешь удивляться, как же раньше-то я жил без нее. Но, должен сказать, авторство ее создания не мое, а вероятнее всего принадлежит англоязычному ресурсу, о котором я скажу ниже.
Кто более-менее часто работает с массивами данных в Excel почти наверняка знает про функцию ВПР (см. мою статью) или ИНДЕКС+ПОИСКПОЗ, которые решают достаточно частую задачу по объединению двух наборов данных по каким-либо совпадающим значениям. И действительно, использование этих функций решает задачи по сопоставлению и объединению данных в 90% случаев. Если бы не одно но — данные, по которым производится объединение, действительно должны именно совпадать. Но бывают случаи, когда требуется сопоставление по частичному совпадению. Да, в ВПР есть поиск по приблизительному совпадению, но работает он не совсем прозрачно, а потому предугадать, почему было подобрано одно похожее слово, а не другое, может быть невозможно не просто. Как вы поняли, эту прелюдию я затеял не просто так, а для того, чтобы рассказать, как же решить такую задачу при помощи Excel.
Предположим, у нас есть список товаров, которые надо как-то сгруппировать:

5 thoughts on “ «ВПР» по частичному совпадению ”

На форуме SQL.ru мне подсказали еще одно очень изящное решение этой задачи, посмотреть его можно здесь:
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&t > Спасибо большое, Казанский (автор совета)!

Игорь, спасибо Вам огромное за эту «бронебойную» формулу. Весь интернет «перелопатила» в поиске решения своей задачи и только Вы мне помогли на 100%. Всё работает как часики. Удачи Вам, успешной работы и ещё больше таких гениальных решений.

Ольга, спасибо большое за Ваш комментарий! Справедливости ради надо сказать, что идея этой формулы не моя, а обнаружил я ее на сайте Exceljet

Игорь, добрый день!
Формула прекрасная, но есть ли какая-нибудь ее вариация, которая может находить и подставлять несколько значений сразу?
Например, в строке указаны два производителя холодильников, LG и Samsung
Можно ли вывести их в ячейку через запятую?

Добрый день, Артём!
Спасибо за ваш комментарий и прошу прощения за медленный ответ. Вопрос интересный, но с ходу у меня на него ответа, увы, нет, а по времени довольно сильно ограничен. Если будет свободное время, попробую поломать голову на эту тему

Рассмотрим использование функции ЕСЛИ в Excel в том случае, если в ячейке находится текст.

Будьте особо внимательны в том случае, если для вас важен регистр, в котором записаны ваши текстовые значения. Функция ЕСЛИ не проверяет регистр – это делают функции, которые вы в ней используете. Поясним на примере.

Проверяем условие для полного совпадения текста.

Проверку выполнения доставки организуем при помощи обычного оператора сравнения «=».

=ЕСЛИ(G2=»выполнено»,ИСТИНА,ЛОЖЬ)

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

Если же вас интересует именно точное совпадение текстовых значений с учетом регистра, то можно рекомендовать вместо оператора «=» использовать функцию СОВПАД(). Она проверяет идентичность двух текстовых значений с учетом регистра отдельных букв.

Вот как это может выглядеть на примере.

Обратите внимание, что если в качестве аргумента мы используем текст, то он обязательно должен быть заключён в кавычки.

ЕСЛИ + СОВПАД

В случае, если нас интересует полное совпадение текста с заданным условием, включая и регистр его символов, то оператор «=» нам не сможет помочь.

Но мы можем использовать функцию СОВПАД (английский аналог — EXACT).

Функция СОВПАД сравнивает два текста и возвращает ИСТИНА в случае их полного совпадения, и ЛОЖЬ — если есть хотя бы одно отличие, включая регистр букв. Поясним возможность ее использования на примере.

Формула проверки выполнения заказа в столбце Н может выглядеть следующим образом:

Как видите, варианты «ВЫПОЛНЕНО» и «выполнено» не засчитываются как правильные. Засчитываются только полные совпадения. Будет полезно, если важно точное написание текста — например, в артикулах товаров.

Использование функции ЕСЛИ с частичным совпадением текста.

Выше мы с вами рассмотрели, как использовать текстовые значения в функции ЕСЛИ. Но часто случается, что необходимо определить не полное, а частичное совпадение текста с каким-то эталоном. К примеру, нас интересует город, но при этом совершенно не важно его название.

Первое, что приходит на ум – использовать подстановочные знаки «?» и «*» (вопросительный знак и звездочку). Однако, к сожалению, этот простой способ здесь не проходит.

ЕСЛИ + ПОИСК

Нам поможет функция ПОИСК (в английском варианте – SEARCH). Она позволяет определить позицию, начиная с которой искомые символы встречаются в тексте. Синтаксис ее таков:

=ПОИСК(что_ищем, где_ищем, начиная_с_какого_символа_ищем)

Если третий аргумент не указан, то поиск начинаем с самого начала – с первого символа.

Функция ПОИСК возвращает либо номер позиции, начиная с которой искомые символы встречаются в тексте, либо ошибку.

Но нам для использования в функции ЕСЛИ нужны логические значения.

Здесь нам на помощь приходит еще одна функция EXCEL – ЕЧИСЛО. Если ее аргументом является число, она возвратит логическое значение ИСТИНА. Во всех остальных случаях, в том числе и в случае, если ее аргумент возвращает ошибку, ЕЧИСЛО возвратит ЛОЖЬ.

В итоге наше выражение в ячейке G2 будет выглядеть следующим образом:

Еще одно важное уточнение. Функция ПОИСК не различает регистр символов.

ЕСЛИ + НАЙТИ

В том случае, если для нас важны строчные и прописные буквы, то придется использовать вместо нее функцию НАЙТИ (в английском варианте – FIND).

Синтаксис ее совершенно аналогичен функции ПОИСК: что ищем, где ищем, начиная с какой позиции.

Изменим нашу формулу в ячейке G2

То есть, если регистр символов для вас важен, просто замените ПОИСК на НАЙТИ.

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

Функция ПОИСКПОЗ в Excel используется для поиска точного совпадения или ближайшего (меньшего или большего заданному в зависимости от типа сопоставления, указанного в качестве аргумента) значения заданному в массиве или диапазоне ячеек и возвращает номер позиции найденного элемента.

Примеры использования функции ПОИСКПОЗ в Excel

Например, имеем последовательный ряд чисел от 1 до 10, записанных в ячейках B1:B10. Функция =ПОИСКПОЗ(3;B1:B10;0) вернет число 3, поскольку искомое значение находится в ячейке B3, которая является третьей от точки отсчета (ячейки B1).

Данная функция удобна для использования в случаях, когда требуется вернуть не само значение, содержащееся в искомой ячейке, а ее координату относительно рассматриваемого диапазона. В случае использования для констант массивов, которые могут быть представлены как массивы элементов «ключ» — «значение», функция ПОИСКПОЗ возвращает значение ключа, который явно не указан.

Например, массив <«виноград»;»яблоко»;»груша»;»слива»>содержит элементы, которые можно представить как: 1 – «виноград», 2 – «яблоко», 3 – «груша», 4 – «слива», где 1, 2, 3, 4 – ключи, а названия фруктов – значения. Тогда функция =ПОИСКПОЗ(«яблоко»;<«виноград»;»яблоко»;»груша»;»слива»>;0) вернет значение 2, являющееся ключом второго элемента. Отсчет выполняется не с 0 (нуля), как это реализовано во многих языках программирования при работе с массивами, а с 1.

Функция ПОИСКПОЗ редко используется самостоятельно. Ее целесообразно применять в связке с другими функциями, например, ИНДЕКС.

Формула для поиска неточного совпадения текста в Excel

Пример 1. Найти позицию первого частичного совпадения строки в диапазоне ячеек, хранящих текстовые значения.

Вид исходной таблицы данных:

Для нахождения позиции текстовой строки в таблице используем следующую формулу:

Из полученного значения вычитается единица для совпадения результата с id записи в таблице.

Сравнение двух таблиц в Excel на наличие несовпадений значений

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

Вид таблицы данных:

Для сравнения значений, находящихся в столбце B:B со значениями из столбца A:A используем следующую формулу массива (CTRL+SHIFT+ENTER):

Функция ПОИСКПОЗ выполняет поиск логического значения ИСТИНА в массиве логических значений, возвращаемых функцией СОВПАД (сравнивает каждый элемент диапазона A2:A12 со значением, хранящимся в ячейке B2, и возвращает массив результатов сравнения). Если функция ПОИСКПОЗ нашла значение ИСТИНА, будет возвращена позиция его первого вхождения в массив. Функция ЕНД возвратит значение ЛОЖЬ, если она не принимает значение ошибки #Н/Д в качестве аргумента. В этом случае функция ЕСЛИ вернет текстовую строку «есть», иначе – «нет».

Чтобы вычислить остальные значения «протянем» формулу из ячейки C2 вниз для использования функции автозаполнения. В результате получим:

Как видно, третьи элементы списков не совпадают.

Поиск ближайшего большего знания в диапазоне чисел Excel

Пример 3. Найти ближайшее меньшее числу 22 в диапазоне чисел, хранящихся в столбце таблицы Excel.

Вид исходной таблицы данных:

Для поиска ближайшего большего значения заданному во всем столбце A:A (числовой ряд может пополняться новыми значениями) используем формулу массива (CTRL+SHIFT+ENTER):

Функция ПОИСКПОЗ возвращает позицию элемента в столбце A:A, имеющего максимальное значение среди чисел, которые больше числа, указанного в ячейке B2. Функция ИНДЕКС возвращает значение, хранящееся в найденной ячейке.

Для поиска ближайшего меньшего значения достаточно лишь немного изменить данную формулу и ее следует также ввести как массив (CTRL+SHIFT+ENTER):

Особенности использования функции ПОИСКПОЗ в Excel

Функция имеет следующую синтаксическую запись:

=ПОИСКПОЗ( искомое_значение;просматриваемый_массив; [тип_сопоставления])

  • искомое_значение – обязательный аргумент, принимающий текстовые, числовые значения, а также данные логического и ссылочного типов, который используется в качестве критерия поиска (для сопоставления величин или нахождения точного совпадения);
  • просматриваемый_массив – обязательный аргумент, принимающий данные ссылочного типа (ссылки на диапазон ячеек) или константу массива, в которых выполняется поиск позиции элемента согласно критерию, заданному первым аргументом функции;
  • [тип_сопоставления] – необязательный для заполнения аргумент в виде числового значения, определяющего способ поиска в диапазоне ячеек или массиве. Может принимать следующие значения:
  1. -1 – поиск наименьшего ближайшего значения заданному аргументом искомое_значение в упорядоченном по убыванию массиве или диапазоне ячеек.
  2. 0 – (по умолчанию) поиск первого значения в массиве или диапазоне ячеек (не обязательно упорядоченном), которое полностью совпадает со значением, переданным в качестве первого аргумента.
  3. 1 – Поиск наибольшего ближайшего значения заданному первым аргументом в упорядоченном по возрастанию массиве или диапазоне ячеек.
  1. Если в качестве аргумента искомое_значение была передана текстовая строка, функция ПОИСКПОЗ вернет позицию элемента в массиве (если такой существует) без учета регистра символов. Например, строки «МоСкВа» и «москва» являются равнозначными. Для различения регистров можно дополнительно использовать функцию СОВПАД.
  2. Если поиск с использованием рассматриваемой функции не дал результатов, будет возвращен код ошибки #Н/Д.
  3. Если аргумент [тип_сопоставления] явно не указан или принимает число 0, для поиска частичного совпадения текстовых значений могут быть использованы подстановочные знаки («?» — замена одного любого символа, «*» — замена любого количества символов).
  4. Если в объекте данных, переданном в качестве аргумента просматриваемый_массив, содержится два и больше элементов, соответствующих искомому значению, будет возвращена позиция первого вхождения такого элемента.

Спустя катастрофически большой промежуток времени с момента публикации моего последнего поста, решил поделиться супер крутой, на мой взгляд, Excel-формулой, узнав о которой, начинаешь удивляться, как же раньше-то я жил без нее. Но, должен сказать, авторство ее создания не мое, а вероятнее всего принадлежит англоязычному ресурсу, о котором я скажу ниже.
Кто более-менее часто работает с массивами данных в Excel почти наверняка знает про функцию ВПР (см. мою статью) или ИНДЕКС+ПОИСКПОЗ, которые решают достаточно частую задачу по объединению двух наборов данных по каким-либо совпадающим значениям. И действительно, использование этих функций решает задачи по сопоставлению и объединению данных в 90% случаев. Если бы не одно но — данные, по которым производится объединение, действительно должны именно совпадать. Но бывают случаи, когда требуется сопоставление по частичному совпадению. Да, в ВПР есть поиск по приблизительному совпадению, но работает он не совсем прозрачно, а потому предугадать, почему было подобрано одно похожее слово, а не другое, может быть невозможно не просто. Как вы поняли, эту прелюдию я затеял не просто так, а для того, чтобы рассказать, как же решить такую задачу при помощи Excel.
Предположим, у нас есть список товаров, которые надо как-то сгруппировать:

MS Excel Img 1

Список намеренно «кривой» в плане однородности данных — бренд то в начале, то в конце, текст то с большой, то с маленькой буквы. В реальных задачах, увы, так обычно и бывает. Поставим теперь себе задачу для каждой записи этого неструктурированного списка сопоставить вид товара (бытовая техника или продукты) и выдернуть из текста название производителя, которое нам известно.
Первым делом нам надо сделать пару таблиц.
Таблица, сопоставляющая ключевое слово виду товара:

MS Excel Img 2

Т.е. нам необходимо позаботиться о списке ключевых слов, по которым мы будем определять вид товара. Здесь намеренно в слове Яблок оставлена только постоянная часть без окончания, которая есть во всех описаниях товаров. Также обращаю ваше внимание, для той формулы, которую мы напишем, регистр не имеет значения.
Далее составим список известных производителей:

MS Excel Img 3

К сожалению, функции ВПР и ИНДЕКС+ПОИСКПОЗ тут оказываются бессильными.
Перерыв весь российский интернет, я не смог найти решения. На тематических форумах мне рекомендовали для решения этой задачи воспользоваться VBA, заплатить знающему человеку за макрос и тому подобное. Я чувствовал, что решение где-то рядом и для него могут пригодиться формулы массивов, но самостоятельно решить эту проблему у меня все никак не получалось, пока не нагуглил аналогичную задачу в англоязычном интернете, там решение нашлось очень быстро на интересном сайте, посвященном работе с Excel, который с радостью вам рекомендую — Exceljet.
Приведу сразу готовое решение применительно к нашей задаче, эта бронебойная формула выглядит следующим образом:
{=ЕСЛИОШИБКА(ИНДЕКС(Виды;ПОИСКПОЗ(ИСТИНА;ЕЧИСЛО(ПОИСК(Виды[Товар];[@Товары]));0);2);»»)}
Она же на картинке:

MS Excel Img 4

Напоминаю, что для формул массива, после их ввода, необходимо нажимать комбинацию клавиш Ctrl+Shift+Enter, после чего у формулы по бокам появляются фигурные скобки.
Как же работает эта формула? Для начала подсветим здесь переменные:

MS Excel Img 5

Чтобы не писать тонну текста, приведу короткую гифку с описанием шагов вычисления этой формулы (обновление кадров на ней довольно медленное, специально для того, чтобы можно было успеть понять, что происходит):MS Excel Img 6 Формула для определения производителя будет аналогичной, но т.к. там всего один столбец, то номер столбца в ПОИСКе будет 1, а не 2:
{=ЕСЛИОШИБКА(ИНДЕКС(Бренды;ПОИСКПОЗ(ИСТИНА;ЕЧИСЛО(ПОИСК(Бренды[Бренд];[@Товары]));0);1);»»)}
Как это часто бывает, изучив какой-то инструмент, начинаешь находить ему применение во множестве областей, так вышло и у меня. В следующей статье я расскажу об интересной практической задаче, которую можно решить, используя эту потрясающую формулу.
PS
В рамках данной статьи предполагается наличие знаний об умных таблицах в Excel и о том, как их именовать и использовать в формулах. Данная формула может быть также эффективно использована и без умных таблиц, но их использование сильно упрощает чтение и построение сложных формул в Excel. Так что всем, кто ими еще не пользуется, всячески рекомендую ознакомиться с ними, тем более в последних версиях Excel они предоставляют мощные возможности по объединению данных, почти как в Access.

Return Vlookup results on partial matches of a cell’s contents. You could type the start, end, or middle of a lookup value and still return a result.

I assume that you are already familiar with Vlookup, if you aren’t, then checkout our tutorials on lookup functions in Excel.

Sections:

Vlookup Match the Start of a Cell

Vlookup Match the End of a Cell

Vlookup Match Anywhere in the Cell

Notes

Vlookup Match the Start of a Cell 

=VLOOKUP(A5 & "*",A1:B3,2,FALSE)

45accb280c25d2bf87ad5da9aab13195.png

Result:

e3a0a4f64828dc24c44e288d64ed9267.png

This works just like a regular Vlookup except for the asterisk.

The lookup value argument looks like this: A5 & «*»

It is the «*» that comes after the lookup value that makes this match the word «red» regardless of what comes after this word. The & (ampersand) is what we need to use to «attach» the lookup value to the asterisk symbol.

The asterisk must be surrounded by double quotation marks.

Also, the range_lookup must be set to False for this kind of Vlookup to work.

Vlookup Match the End of a Cell

=VLOOKUP("*" & A5,A1:B3,2,FALSE)

65e489e093798640539d330742377069.png

Result:

dcff19aa726fab961a0871926e2d5309.png

The asterisk at the start of the lookup_range argument is what makes this match the lookup value regardless of what comes before it in the cell.

You must always put the asterisk in this form «*» surrounded by double quotation marks and «attach» it to the lookup value by using the & (ampersand) character.

The range_lookup must be set to False for this kind of Vlookup to work.

Vlookup Match Anywhere in the Cell

=VLOOKUP("*" & A7 & "*",A1:B3,2,FALSE)

a61fc84c2d9579d82b3f1f445de30995.png

Result:

ea5d595c044efdfbeeaf8c313a1807d2.png

This Vlookup matches the first cell that contains the lookup value, regardless of where that value is found within the cell.

To make this example return 3, I changed the lookup value to green and put that value in cell A3, otherwise, a search for red would have returned 1 since it would match the contents in cell A1.

This version of the Vlookup function has two asterisks that surround the lookup_value; this is what allows a match to happen in this manner. The asterisks must be in this form: «*» with double quotation marks around them and they must be «attached» to the lookup value using the & (ampersand) character.

The range_lookup must be set to False for this kind of Vlookup to work.

Notes

This is a great way to use the Vlookup function in Excel but, remember, it will only return the first match that is made in the data set. As such, this type of lookup will not always be useful.

Download the attached file to work with these examples in Excel.

Similar Content on TeachExcel

Partial Match Lookup with Numbers in Excel

Tutorial:
Perform lookups on numbers with partial matches. For instance, find the first number that…

Wildcards in Excel

Tutorial:
Wildcards are characters that allow you to make more robust functions, searches, and filt…

Vlookup Date Picker in Excel (Dynamic)

Tutorial: Make a dynamically updating vlookup date picker for excel that allows you to choose a date…

How to Quickly Find Data Anywhere in Excel

Tutorial:
Finding specific records and/or cells is easy when using the Find tool in Excel. It is lo…

VLOOKUP() Function in Excel

Tutorial:
Full explanation of the Vlookup function in Excel, what it is, how to use it, and when yo…

Best Lookup Formula in Excel — Index and Match

Tutorial:
A lookup using INDEX and MATCH is like a VLOOKUP without the restrictions.  Index and Ma…

Subscribe for Weekly Tutorials

BONUS: subscribe now to download our Top Tutorials Ebook!

ВПР по части слова без VBA

tel9035913360

Дата: Вторник, 16.08.2022, 09:39 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 13


Репутация:

0

±

Замечаний:
0% ±


Поискал в инете не смог разобраться с формулой, почему то все ведет к VBA
Суть: Поиск значения в таблице по части текста
более понятное объяснение во вложении
Спасибо !

 

Ответить

bigorq

Дата: Вторник, 16.08.2022, 09:43 |
Сообщение № 2

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 183


Репутация:

38

±

Замечаний:
0% ±


Нет

Добрый день. Файл не смотрел. С подстановочными знаками пробовали?

 

Ответить

_Boroda_

Дата: Вторник, 16.08.2022, 09:48 |
Сообщение № 3

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Код

=ВПР(ПСТР(B17;ПОИСК(«.»;B17);99);C3:G11;2;)


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Serge_007

Дата: Вторник, 16.08.2022, 09:48 |
Сообщение № 4

Группа: Админы

Ранг: Местный житель

Сообщений: 15888


Репутация:

2623

±

Замечаний:
±


Excel 2016

Код

=ВПР(ПСТРБ($B3;НАЙТИ(«.»;$B3);99);$C3:$G12;СТОЛБЕЦ(A1);)


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

tel9035913360

Дата: Вторник, 16.08.2022, 10:27 |
Сообщение № 5

Группа: Пользователи

Ранг: Новичок

Сообщений: 13


Репутация:

0

±

Замечаний:
0% ±


Все огромное спасибо !
Serge_007 отдельное за файл с примером

 

Ответить

Функция ВПР может использоваться для поиска значения по строке в таблице в определённом массиве данных. Синтаксис нашей функции имеет следующий вид:

ВПР (искомое значение; диапазон поиска; номер столбца с входным значением; 0 (ЛОЖЬ) или 1 (ИСТИНА)).

ЛОЖЬ – точное значение, ИСТИНА – приблизительное значение.

Простейшая задача для функции ВПР. Например, у нас есть список лекарственных препаратов. Наша первая задача – найти стоимость препарата Хепилор.

Простейшая задача для функции ВПР

В ячейке С12 начинаем писать функцию:

Столбцы нумеруются

  1. B12 – поскольку нам нужен Хепилор, выбираем ячейку с предварительно написанным названием искомого лекарства.
  2. Далее выбираем диапазон данных B3:D10, где функция будет совершать поиск нужного нам значения. Крайний левый столбец диапазона должен содержать в себе искомый критерий, по которому производится поиск значения.
  3. Следующий шаг – указать номер столбца в массиве B3:D10, из которого будет считана информация на одной строке с Хепилором. Столбцы нумеруются слева направо в самом диапазоне, в нашем примере первый столбец – В, но не А, поскольку А лежит вне области диапазона.

Поиск по столбце «Производитель» будет работать точно так же, нужно просто указать последовательность столбца, где находится нужная нам информация – заменяем цифру «3» в формуле (ячейка С27) на цифру «2»:

Поиск по столбце

Есть определённая особенность, связанная со столбцами. Иногда в Excel-файле в таблицах некоторые ячейки объединяют. На картинке ниже в формуле на месте порядкового номера столбца у нас написана цифра «3», но результат – название производителя, а не цена, как в первом примере:

Производитель или цена

Произошел сдвиг нумерации столбцов как раз из-за наличия объединения ячеек в столбце «Лекарственное средство»: мы объединяли столбцы «H» и «I», зрительно столбец «Лекарственное средство» — это первый столбец, а «Производитель» — второй, НО формула нумерует их следующим образом:

  • H – первый;
  • I – второй;
  • J – третий;
  • K – четвертый.

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



Использование функции ВПР для работы с несколькими таблицами и другими функциями

В следующем примере рассмотрим, как ещё мы можем использовать функцию для поиска и получения информации по критериям и комбинирование функции с функцией ЕСЛИОШИБКА. Например, мы имеем два отчета – отчет о количестве товара и отчет о цене за единицу товара, которые нам необходимы для подсчета стоимости. Опять же, с небольшим количеством данных это вполне можно сделать вручную, но, когда мы имеем большой объем, справиться с этим скорее и эффективнее нам поможет функция ВПР. В ячейке D3 начинаем писать функцию:

два отчета

  1. B3 – критерий, по котором проводим поиск данных.
  2. F3:G14 – диапазон, по котором наша функция будет осуществлять поиск совпадения критерия и данных по строке.
  3. Цифра «2» — номер столбца с нужной нам информацией по критерию.
  4. Цифра «0» (или можно использовать слово «ЛОЖЬ») — для точности результатов.

Таким образом, когда мы задаем формуле искомый критерий, она начинает поиск совпадений с верхней ячейки первого столбца (шаг 1 на картинке). Затем функция «читает» все критерии сверху вниз, пока не найдет точное совпадение (шаг 2). Когда ВПР дойдет до Хепилора, она отсчитает нужное количество столбцов вправо (шаг 3) и выдаст нам искомое значение для критерия – цену 86,90 (шаг 4):

Шаг за шагом

Но сейчас у нас есть данные только по первому критерию. Для того чтобы заполнить третий столбец D первой таблицы до конца, нужно просто скопировать функцию до последнего критерия. Однако, на этом этапе для корректной работы диапазон, где совершается поиск, нужно закрепить, иначе массив данных «съедет» вниз и у нас ничего не получится. Для этого используем абсолютные ссылки для диапазона в ячейке D3 – выделяем курсором диапазон F3:G14 и нажимаем клавишу F4, после чего совершаем копирование формулы до конца таблицы:

копирование формулы до конца

В итоге мы получаем необходимый нам результат:

пример 2

Однако, наш пример базировался на полном соответствии критериев с обеих таблиц – одинаковое количество товаров, одинаковые наименования. Но что, если, например, убрать последние четыре товара с отчета по ценам за упаковку? Тогда у нас будет ошибка #Н/Д в первой таблице в тех позициях, которые находятся на одной строке с искомым критерием:

нет данных

Если вас не устраивает такое содержание ячеек, можно заменить значение ошибки. Для этого комбинируем функцию ВПР с функцией ЕСЛИОШИБКА. Синтаксис функции ЕСЛИОШИБКА(значение, значение_если_ошибка), таким образом значением у нас будет наша использованная функция ВПР, а значением если ошибка – то, что мы хотим видеть вместо #Н/Д, например, прочерк, но обязательно взятый в кавычки:

В результате мы получим красиво оформленную таблицу с надлежащим видом:

ЕСЛИОШИБКА

Использование приблизительного значения

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

Пример 3

Как видим, размер премии зависит от того диапазона по системе премирования, куда попал показатель выполнения продаж конкретного сотрудника. Мы видим, что если план выполнен менее, чем на 100% — премия не присваивается, а если на 107% (выше 100%, но меньше 110%), тогда сотрудник получает премию размером 10%. Описанные показатели премии нам нужно вписать с помощью функции ВПР в столбец «Премия» первой таблицы, только на этот раз критерий будет находиться в определённом диапазоне.

Для корректной работы нужно убедиться, что границы диапазонов во второй таблице крайнего левого столбца размещены по возрастанию сверху вниз (шаг 1). Формула берёт выбранный нами критерий и осуществляет поиск в первом столбце второй таблицы (шаг 2), просматривая все значения сверху вниз (шаг 3). Как только функция находит первое значение, которое превышает критерий с первой таблицы, делает «шаг назад» (шаг 4) и считывает значение, которое соответствует найденому критерию (шаг 5). Иными словами, при неточном поиске функция ВПР ищет меньшее значение для искомого критерия:

пошагово 2

Таким образом, наша функция будет выглядеть так:

И результат использования функции ВПР с приблизительным поиском имеет вот такой результат:

результат использования функции ВПР

download file. Скачать все пошаговые примеры функции ВПР в Excel

Например, сотрудник Ольга имеет премию размером 0%, поскольку она выполнила 76% продаж, тоесть перевыполнила план на 0%. А сотрудник Наталья совершила продажи на 21% выше нормы и была премирована на 20%, что мы и видим, если сравнить самостоятельно данные с двух таблиц.

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

 

osbi

Пользователь

Сообщений: 38
Регистрация: 17.07.2014

Добрый день, подскажите, пожалуйста, можно ли как то сделать vlookup по части слова (текст содержится в ячейке, но не полностью соответствует ей)? Задача примерно следующая: есть массив (название банка и ссылка на сайт банка), есть несколько тысяч разных словосочетаний с названиями этих банков (например: сбербанк адрес, альфабанк москва, сбербанк кредит и тд). Нужно как то расставить ссылки на сайт банка для каждой такой фразы из первого массива.

Пример во вложении.  

Прикрепленные файлы

  • expl.xlsx (32.48 КБ)

 

osbi

Пользователь

Сообщений: 38
Регистрация: 17.07.2014

Как найти значение как часть массива — понятно, а вот если в значении (которое мы ищем через vlookup) больше слов чем в массиве — непонятно.

 

V

Пользователь

Сообщений: 5018
Регистрация: 22.12.2012

#3

22.08.2014 09:57:27

для данного примера можно так

Код
=ВПР(ПСТР(E1;1;ПОИСК(" ";E1)-1)&"*";$A$1:$B$3;2;) 
 

JayBhagavan

Пользователь

Сообщений: 11833
Регистрация: 17.01.2014

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

#4

22.08.2014 09:58:15

Формула массива:

Код
=ИНДЕКС($A$1:$A$3;МАКС(СТРОКА($A$1:$A$3)*ЕЧИСЛО(ПОИСК($A$1:$A$3;$E1))))

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

osbi

Пользователь

Сообщений: 38
Регистрация: 17.07.2014

А если excel английский?)

 

JayBhagavan

Пользователь

Сообщений: 11833
Регистрация: 17.01.2014

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

osbi, есть переводчик формул. Яндекс в помощь.  ;)
ЗЫ Не стоит так коряво цитировать, достаточно было имя указать и вопрос.  :)

Изменено: JayBhagavan22.08.2014 10:02:18

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

osbi

Пользователь

Сообщений: 38
Регистрация: 17.07.2014

#7

22.08.2014 10:14:07

Цитата
для данного примера можно так

Спасибо, почти работает. Только вот если перед названием банка из А столбца поставить слово — то будет N/A. Можно это как то решить?

Изменено: osbi23.08.2014 12:02:46

 

V

Пользователь

Сообщений: 5018
Регистрация: 22.12.2012

#8

22.08.2014 10:42:03

проверяйте

Код
=ПРОСМОТР(99;ПОИСК($A$1:$A$3;E1);$B$1:$B$3) 
 

Максим Зеленский

Пользователь

Сообщений: 4646
Регистрация: 11.06.2014

Microsoft MVP

#9

22.08.2014 10:44:18

модифицированная формула от JayBhagavan  из 4-го сообщения:

Код
=ВПР(ИНДЕКС($A$1:$A$3;МАКС(СТРОКА($A$1:$A$3)*ЕЧИСЛО(ПОИСК($A$1:$A$3;$E1))));$A$1:$B$3;2;ЛОЖЬ)

F1 творит чудеса

 

osbi,извините, но у ЮникредитБанка сайт

http://www.unicreditbank.ru/

по ссылке что у вас в файле сайт с рекламой(

 

JayBhagavan

Пользователь

Сообщений: 11833
Регистрация: 17.01.2014

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

#11

22.08.2014 10:46:10

Что-то я стратил с формулой. Исправленная формула массива:

Код
=ИНДЕКС($B$1:$B$3;МАКС(СТРОКА($A$1:$A$3)*ЕЧИСЛО(ПОИСК($A$1:$A$3;$E1))))

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

osbi

Пользователь

Сообщений: 38
Регистрация: 17.07.2014

#12

22.08.2014 10:53:52

Цитата
Finswimmer пишет:
osbi ,извините, но у ЮникредитБанка сайт http://www.unicreditbank.ru/ по ссылке что у вас в файле сайт с рекламой(

Первое, что в голову попало вбил)

 

osbi

Пользователь

Сообщений: 38
Регистрация: 17.07.2014

#13

22.08.2014 11:26:26

Цитата
V пишет: =ПРОСМОТР(99;ПОИСК($A$1:$A$3;E1);$B$1:$B$3)

Остановился на этом — делает то что нужно мне. Спасибо всем большое за оперативную помощь.

 

Kesho

Пользователь

Сообщений: 3
Регистрация: 26.03.2014

Подскажите в этой функции «=ПРОСМОТР(99;ПОИСК($A$1:$A$3;E1);$B$1:$B$3)» за что отвечает «99», что обозначает?  

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Это искомое число.
Но если нужно найти последнее значение в диапазоне, искомое указывают больше возможного максимального числа.

 

Бек

Пользователь

Сообщений: 4
Регистрация: 05.10.2022

Подскажите, а как можно здесь выполнить поиск по части слова? К примеру если ввести «альф» — то он бы находил httр://alfa-bank.ru.
А если бы мы ввели «банк» и он встречается в нескольких строках, то все эти строки столбиком бы выдавал.

 

Павел с Востока

Пользователь

Сообщений: 148
Регистрация: 09.01.2023

#17

03.04.2023 10:51:35

Бек,  вам следовало  бы новую тему создать — быстрее бы ответили
да и подобное уже было — задачи однотипные

{  =ЕСЛИОШИБКА(ИНДЕКС($E$1:$E$6;НАИМЕНЬШИЙ(ЕСЛИОШИБКА((ПОИСК($D$11;$E$1:$E$6)>0)*(СТРОКА($E$1:$E$6)-СТРОКА($E$1)+1);»»);СТРОКА()-СТРОКА($E$11)+1));»»)  }

Прикрепленные файлы

  • expl_.xlsx (11.49 КБ)

Like this post? Please share to your friends:
  • Excel вкладка данные форма
  • Excel вкладка данные типы данных
  • Excel вкладка данные анализ данных
  • Excel витамины с мсм
  • Excel витамины для щенков крупных пород