Excel поиск текста по нескольким

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

Постановка задачи

Если вы продвинутый пользователь Microsoft Excel, то должны быть знакомы с функцией поиска и подстановки ВПР или VLOOKUP (если еще нет, то сначала почитайте эту статью, чтобы им стать). Для тех, кто понимает, рекламировать ее не нужно :) — без нее не обходится ни один сложный расчет в Excel. Есть, однако, одна проблема: эта функция умеет искать данные только по совпадению одного параметра. А если у нас их несколько?

Предположим, что у нас есть база данных по ценам товаров за разные месяцы:

vlookup-2cols1.png

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

Способ 1. Дополнительный столбец с ключом поиска

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

Добавим рядом с нашей таблицей еще один столбец, где склеим название товара и месяц в единое целое с помощью оператора сцепки (&), чтобы получить уникальный столбец-ключ для поиска:

vlookup-2cols2.png

Теперь можно использовать знакомую функцию ВПР (VLOOKUP) для поиска склеенной пары НектаринЯнварь из ячеек H3 и J3 в созданном ключевом столбце:

vlookup-2cols3.png

Плюсы: Простой способ, знакомая функция, работает с любыми данными.

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

Способ 2. Функция СУММЕСЛИМН

Если нужно найти именно число (в нашем случае цена как раз число), то вместо ВПР можно использовать функцию СУММЕСЛИМН (SUMIFS), появившуюся начиная с Excel 2007. По идее, эта функция выбирает и суммирует числовые значения по нескольким (до 127!) условиям. Но если в нашем списке нет повторяющихся товаров внутри одного месяца, то она просто выведет значение цены для заданного товара и месяца:

vlookup-2cols4.png

Плюсы: Не нужен дополнительный столбец, решение легко масштабируется на большее количество условий (до 127), быстро считает.

Минусы: Работает только с числовыми данными на выходе, не применима для поиска текста, не работает в старых версиях Excel (2003 и ранее).

Способ 3. Формула массива

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

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

    vlookup-2cols6.png

  3. Нажмите в конце не Enter, а сочетание Ctrl+Shift+Enter, чтобы ввести формулу не как обычную, а как формулу массива.

Как это на самом деле работает:

Функция ИНДЕКС выдает из диапазона цен C2:C161 содержимое N-ой ячейки по порядку. При этом порядковый номер нужной ячейки нам находит функция ПОИСКПОЗ. Она ищет связку названия товара и месяца (НектаринЯнварь) по очереди во всех ячейках склеенного из двух столбцов диапазона A2:A161&B2:B161 и выдает порядковый номер ячейки, где нашла точное совпадение. По сути, это первый способ, но ключевой столбец создается виртуально прямо внутри формулы, а не в ячейках листа.

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

Минусы: Ощутимо тормозит на больших таблицах (как и все формулы массива, впрочем), особенно если указывать диапазоны «с запасом» или сразу целые столбцы (т.е. вместо A2:A161 вводить A:A и т.д.) Многим непривычны формулы массива в принципе (тогда вам сюда).

Ссылки по теме

  • Как искать и подставлять данные с помощью функции ВПР (VLOOKUP)
  • Что такое формулы массива и как их использовать
  • Как использовать связку функций ИНДЕКС и ПОИСКПОЗ вместо ВПР
  • Как извлечь сразу все значения, а не только первое с помощью ВПР

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

​Смотрите также​ акта» т.н. столбец​​Не могу сам​​ в столбце С​ быть отсортирована по​Киева​ ячейки C1, использованного​ же придется составить​​ значений, поэтому перед​​Если функция​ЕСЛИ​ на рисунке выше)​ скопировать эту формулу:​и так далее.​ результат из тех​ которые они купили.​ использовать следующую формулу:​Во второй части нашего​ H листа «Претензии».​ справиться со следующей​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(A1<>»»;ПОИСКПОЗ(«*»&A1&»*»;$C:$C;))​ возрастанию (для Типа​​, выбранного пользователем в​​ в качестве первого​ список искомых вариантов.​

  • ​ вводом формулы нужно​ДВССЫЛ​
  • ​на ссылку с​Запишите формулу для вставки​=INDEX($A$2:$I$9,MATCH(«Lemons»,$A$2:$A$9,0),MATCH(«Mar»,$A$1:$I$1,0))​
  • ​IFERROR()​ же строк в​
  • ​ Попробуем найти 2-й,​=VLOOKUP(«Jeremy Hill Sweets»,$A$7:$D$18,4,FALSE)​
  • ​ учебника по функции​ В примере, в​
  • ​ задачей, поэтому прошу​3. Для столбца​

Поиск в Excel по нескольким критериям

​ сопоставления = 1)​​ желтой ячейке J3​​ критерия поискового запроса​ увидев цифру, будете​ выделить сразу весь​ссылается на другую​ функцией​ цен из таблицы​=ИНДЕКС($A$2:$I$9;ПОИСКПОЗ(«Lemons»;$A$2:$A$9;0);ПОИСКПОЗ(«Mar»;$A$1:$I$1;0))​ЕСЛИОШИБКА()​ столбце C.​ 3-й и 4-й​=ВПР(«Jeremy Hill Sweets»;$A$7:$D$18;4;ЛОЖЬ)​ВПР​ ячейке H2 данные​ помощи.​

Пример 1: Поиск по 2-м разным критериям

​ С​ или по убыванию​ значение 4.​​ (Дата). Одним словом,​​ знать где есть​ диапазон, т.е. ячейки​​ книгу, то эта​​ДВССЫЛ​​Lookup table 2​​Если Вы не в​В завершение, мы помещаем​{=IFERROR(INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3)),»»)}​ товары, купленные заданным​или​(VLOOKUP) в Excel​

Руководство по функции ВПР в Excel

​ «24948», т.е. номер​​Есть файл Excel​​Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИЛИ(ЕСЛИ($A$1:$B$5<>»»;ЕЧИСЛО(ПОИСК(«*»&СИМВОЛ(10)&$A$1:$B$5&СИМВОЛ(10)&»*»;СИМВОЛ(10)&C1&СИМВОЛ(10)))))​ (для Типа сопоставления​И, наконец, в-третьих, нам​ таблица в памяти​ искомое​С10:С19​ книга должна быть​. Вот такая комбинация​​на основе известных​​ восторге от всех​​ формулу внутрь функции​​{=ЕСЛИОШИБКА(ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3));»»)}​ клиентом.​

​=VLOOKUP(B1,$A$7:$D$18,4,FALSE)​
​ мы разберём несколько​

​ акта 24948. Нам​ с несколькими листами.​​1. и 2.​​ = -1) по​​ нужна функция, которая​​ проверена функцией ВПР​Шведов сергей​

​, ввести формулу в​ открытой. Если же​ВПР​ названий товаров. Для​ этих сложных формул​IFERROR​​Введите эту формулу массива​​Простейший способ – добавить​​=ВПР(B1;$A$7:$D$18;4;ЛОЖЬ)​​ примеров, которые помогут​ необходимо произвести поиск​ НА первый лист​ на всем столбце​ строчкам и по​ умеет выдавать содержимое​ с одним условием​​: мало инфы.​​ Строке формул и​ она закрыта, функция​

​и​ этого вставьте созданную​ Excel, Вам может​(ЕСЛИОШИБКА), поскольку вряд​ в несколько смежных​​ вспомогательный столбец перед​​Где ячейка​ Вам направить всю​ этого значения:​ необходимо подтягивать данные​​ работают быстро.​​ столбцам.​ ячейки из таблицы​

​ поиска. При положительном​
​могу предложить к​

​ нажать​

​ сообщит об ошибке​
​ДВССЫЛ​

​ ранее формулу в​​ понравиться вот такой​​ ли Вас обрадует​ ячеек, например, в​​ столбцом​​B1​​ мощь​​в листе «Дисциплина» в​​ из других листов​​3. на всем​Иначе приблизительный поиск корректно​ по номеру строки​

Руководство по функции ВПР в Excel

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

​ результате сопоставления функция​ части наименования добавить​CRTL+SHIFT+ENTER​#REF!​отлично работает в​ качестве искомого значения​ наглядный и запоминающийся​ сообщение об ошибке​ ячейки​Customer Name​содержит объединенное значение​ВПР​ столбце G​

​ при условии, что​ столбце не пробовал,​ работать не будет!​ и столбца -​ возвращает значение элемента​ звёздочку. часто работает.​.​(#ССЫЛ!).​ паре:​

​ для новой функции​​ способ:​​#N/A​

​F4:F8​
​и заполнить его​

​ аргумента​на решение наиболее​в листе «Документы» в​ выполняется следующее условие​ на 3000 ячеек​​Для точного поиска (Тип​​ функция​ из третьего столбца​Удачи!​

​Для скрытия ошибок #ССЫЛКА!,​Урок подготовлен для Вас​=VLOOKUP($D$2,INDIRECT($D3&»_Sales»),2,FALSE)​ВПР​Выделите таблицу, откройте вкладку​(#Н/Д) в случае,​

​, как показано на​
​ именами клиентов с​

Руководство по функции ВПР в Excel

​lookup_value​ амбициозных задач Excel.​ столбце А​ — Номер акта​ работает быстро.​ сопоставления = 0)​ИНДЕКС (INDEX)​ (выручка) условной таблицы.​Функция ВПР (Вертикальный ПРосмотр)​ возвращаемой формулой массива,​ командой сайта office-guru.ru​=ВПР($D$2;ДВССЫЛ($D3&»_Sales»);2;ЛОЖЬ)​:​Formulas​

​ если количество ячеек,​​ рисунке ниже. Количество​​ номером повторения каждого​​(искомое_значение), а​ Примеры подразумевают, что​в листе «Продукция» в​ из первого листа​Файл перевложил и​ сортировка не нужна​из той же​ Это происходит потому,​ ищет по таблице​

​ к диапазону​Источник: https://www.ablebits.com/office-addins-blog/2014/07/29/vlookup-formula-examples/​Где:​=VLOOKUP(VLOOKUP(A2,New_SKU,2,FALSE),Price,3,FALSE)​(Формулы) и нажмите​ в которые скопирована​ ячеек должно быть​ имени, например,​4​ Вы уже имеете​ столбце А​​ соответствует номеру акта​​ лишний $ в​​ и никакой роли​​ категории​

Извлекаем 2-е, 3-е и т.д. значения, используя ВПР

​ что в третьем​​ с данными и​​С10:С19​Перевел: Антон Андронов​$D$2​=ВПР(ВПР(A2;New_SKU;2;ЛОЖЬ);Price;3;ЛОЖЬ)​Create from Selection​ формула, будет меньше,​ равным или большим,​John Doe1​– аргумент​ базовые знания о​При нахождении искомого​ в другом листе.​ первой формуле убрал.​ не играет.​

​Ссылки и массивы (Lookup​ аргументе указывается номер​ на основе критериев​применено правило Условного​Автор: Антон Андронов​– это ячейка​Здесь​(Создать из выделенного).​ чем количество повторяющихся​ чем максимально возможное​

​,​col_index_num​ том, как работает​​ значения в любом​​ При этом, подтягиваются​Kerby​В комментах неоднократно интересуются​ and Reference)​​ столбца 3 из​​ запроса поиска, возвращает​​ форматирования.​​Найдем текстовые значения, удовлетворяющие​ с названием товара,​Price​​Отметьте галочками​​ значений в просматриваемом​ число повторений искомого​John Doe2​

​(номер_столбца), т.е. номер​
​ эта функция. Если​

Руководство по функции ВПР в Excel

​ из столбцов прекращаем​ определенные данные из​​:​​ — а как​. Первый аргумент этой​

  • ​ которого берутся значения.​​ соответствующее значение с​​В этом случае будут​​ заданному пользователем критерию.​​ она неизменна благодаря​

    ​– именованный диапазон​
    ​Top row​

  • ​ диапазоне.​​ значения. Не забудьте​​и т.д. Фокус​​ столбца, содержащего данные,​​ нет, возможно, Вам​

    ​ поиск и подтягиваем​
    ​ этого листа в​

​_Boroda_​ сделать обратную операцию,​ функции — диапазон​ Стоит отметить что​ определенного столбца. Очень​ выведены все значения,​ Поиск будем осуществлять​

Руководство по функции ВПР в Excel

​ абсолютной ссылке.​​$A:$C​​(в строке выше)​Выполнение двумерного поиска в​ нажать​ с нумерацией сделаем​

​ которые необходимо извлечь.​
​ будет интересно начать​

​ из найденной строки​

  • ​ первый лист. Трудность​​, спасибо. Уже пару​ т.е. определить в​ ячеек (в нашем​ для просмотра в​
  • ​ часто необходимо в​​ которые совпадают с​​ в диапазоне с​​$D3​
  • ​в таблице​​ и​ Excel подразумевает поиск​Ctrl+Shift+Enter​ при помощи функции​
  • ​Если Вам необходимо обновить​​ с первой части​ найденного листа в​ так же в​

​ часов изучаю ваш​ первом примере город​ случае это вся​ аргументах функции указывается​ запросе поиска использовать​ критерием (без учета​

Руководство по функции ВПР в Excel

​ повторяющимися значениями. При​– это ячейка,​Lookup table 2​​Left column​​ значения по известному​, чтобы правильно ввести​COUNTIF​ основную таблицу (Main​ этого учебника, в​ строку листа «Претензии»​ том, что листы​​ файл. Работает не​​ и товар если​ таблица, т.е. B2:F10),​ целая таблица (во​ сразу несколько условий.​ РЕгиСТра). Критерий вводится​ наличии повторов, можно​

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

​ содержащая первую часть​​, а​​(в столбце слева).​ номеру строки и​ формулу массива.​(СЧЁТЕСЛИ), учитывая, что​ table), добавив данные​ которой объясняются синтаксис​ данные. В данном​ отличаются друг от​ совсем корректно.​​ мы знаем значение​​ второй — номер​​ втором аргументе), но​​ Но по умолчанию​​ в ячейку​​ ожидать, что критерию​

​ названия региона. В​3​ Microsoft Excel назначит​ столбца. Другими словами,​Если Вам интересно понять,​ имена клиентов находятся​ из второй таблицы​ и основное применение​

​ примере мы должны​
​ друга и привести​

​Почему-то выделяет ячейку​ из таблицы? Тут​ строки, третий -​ сам поиск всегда​​ данная функция не​​E6​ будет соответствовать несколько​ нашем примере это​– это столбец​ имена диапазонам из​ Вы извлекаете значение​ как она работает,​ в столбце B:​​ (Lookup table), которая​​ВПР​ найти значение «24948»​

Руководство по функции ВПР в Excel

​ их в один​ А2, заметил, что​ потребуются две небольшие​ номер столбца (а​

Часть 1:

​ идет по первому​
​ может обработать более​

​.​​ значений. Для их​FL​ C, содержащий цены.​ значений в верхней​ ячейки на пересечении​ давайте немного погрузимся​​=B2&COUNTIF($B$2:B2,B2)​​ находится на другом​. Что ж, давайте​​ на листе «Документы»​​ вид нет возможности​ выделяет ячйки во​ формулы массива (не​​ их мы определим​​ столбцу в указанной​ одного условия. Поэтому​

​Для создания списка, содержащего​​ вывода в отдельный​​.​На рисунке ниже виден​​ строке и левом​

Часть 2:

​ конкретной строки и​
​ в детали формулы:​

​=B2&СЧЁТЕСЛИ($B$2:B2;B2)​​ листе или в​​ приступим.​ в ячейке A2.​ (они постоянно обновляются),​ 2-м столбце при​ забудьте ввести их​​ с помощью функций​​ таблицы.​ следует использовать весьма​​ найденные значения, воспользуемся​​ диапазон удобно использовать​​_Sales​​ результат, возвращаемый созданной​ столбце Вашей таблицы.​​ столбца.​​IF($F$2=B2:B16,ROW(C2:C16)-1,»»)​​После этого Вы можете​​ другой рабочей книге​Поиск в Excel по​ При этом нужно​

Часть 3:

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

​ с помощью сочетания​​ ПОИСКПОЗ).​​Скачать пример функции ВПР​​ простую формулу, которая​​ формулой массива:​ формулы массива.​– общая часть​ нами формулой:​ Теперь Вы можете​Итак, давайте обратимся к​​ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»)​​ использовать обычную функцию​ Excel, то Вы​ нескольким критериям​​ скопировать данные из​​ указывать какие именно​​ (пробовал «ssss», «0»,​​ клавиш​​Итого, соединяя все вышеперечисленное​​ с несколькими условиями​ позволит расширить возможности​​=ИНДЕКС(Список; НАИМЕНЬШИЙ(​​Пусть Исходный список значений​​ названия всех именованных​​В начале разъясним, что​​ осуществлять поиск, используя​​ нашей таблице и​$F$2=B2:B16​​ВПР​​ можете собрать искомое​

Часть 4:

​Извлекаем 2-е, 3-е и​
​ Документы!B2 в Претензии!I2,​

​ данные и куда​​ «9»). Выделенеие «исчезает»​​Ctrl+Shift+Enter​ в одну формулу,​ в Excel​​ функции ВПР по​​ЕСЛИ($E$6=Список;СТРОКА(Список)-СТРОКА($A$9);30);​​ (например, перечень инструментов)​​ диапазонов или таблиц.​​ мы подразумеваем под​​ эти имена, напрямую,​​ запишем формулу с​​– сравниваем значение​​, чтобы найти нужный​​ значение непосредственно в​​ т.д. значения, используя​​ из Документы!C2 в​​ следует копировать.​​ если в первый​

Часть 5:

​, а не обычного​
​ получаем для зеленой​

​А из какого столбца​ нескольким столбцам одновременно.​​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​​ находится в диапазоне​ Соединенная со значением​ выражением «Динамическая подстановка​​ без создания формул.​​ функцией​ в ячейке F2​ заказ. Например:​ формуле, которую вставляете​ ВПР​ Претензии!C2, из Документы!D2​Если бы был​

Двумерный поиск по известным строке и столбцу

​ столбец поставиль какое-либо​Enter​ ячейки решение:​ брать возвращаемое значение​Для наглядности разберем формулу​В этом случае будут​A10:A19​ в ячейке D3,​ данных из разных​

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

Руководство по функции ВПР в Excel

​ значение (не всегда).​):​=ИНДЕКС(B2:F10; ПОИСКПОЗ(J2;A2:A10;0); ПОИСКПОЗ(J3;B1:F1;0))​ указывается уже в​ ВПР с примером​

Функции ВПР и ПОИСКПОЗ

​ выведены все значения,​(см. Файл примера).​​ она образует полное​​ таблиц», чтобы убедиться​​ запишите​​, которая найдет информацию​ значений диапазона B2:B16.​2-й​​Как и в предыдущем​​ значения​​ так далее.​​ лист (из которого​

​Так же не​
​Принцип их работы следующий:​

​или в английском варианте​ третьем аргументе.​​ нескольких условий. Для​​ которые начинаются или​Выведем в отдельный диапазон​ имя требуемого диапазона.​ правильно ли мы​=имя_строки имя_столбца​ о стоимости проданных​ Если найдено совпадение,​товар, заказанный покупателем​ примере, Вам понадобится​Двумерный поиск по известным​Все эти связи​ мы ищем данные),​​ выделяет значения в​​перебираем все ячейки в​ =INDEX(B2:F10;MATCH(J2;A2:A10;0);MATCH(J3;B1:F1;0))​​Число 0 в последнем​​ примера будем использовать​ совпадают с критерием.​

​ значения, которые удовлетворяют​
​ Ниже приведены некоторые​

​ понимает друг друга.​, например, так:​ в марте лимонов.​

  • ​ то выражение​Dan Brown​​ в таблице поиска​​ строке и столбцу​
  • ​ (откуда и что​ то можно было​ 3-м столбце при​​ диапазоне B2:F10 и​​Слегка модифицируем предыдущий пример.​
  • ​ аргументе функции указывает​ схематический отчет по​​ Критерий вводится в​​ критерию. Рассмотрим различные​

​ подробности для тех,​​Бывают ситуации, когда есть​​=Lemons Mar​Существует несколько способов выполнить​​СТРОКА(C2:C16)-1​​:​ (Lookup table) вспомогательный​Используем несколько ВПР в​ копировать) я думаю​​ бы использовать функцию​​ наличии совпадений только​ ищем совпадение с​​ Предположим, что у​​ на то, то​

​ выручке торговых представителей​ ячейку​ варианты поиска.​ кто не имеет​ несколько листов с​… или наоборот:​ двумерный поиск. Познакомьтесь​возвращает номер соответствующей​

Функция СУММПРОИЗВ

​=VLOOKUP(«Dan Brown2»,$A$2:$C$16,3,FALSE)​​ столбец с объединенными​​ одной формуле​ смогу прописать сам,​

​ ВПР, но в​
​ в нем, как​

Функции ИНДЕКС и ПОИСКПОЗ

​ искомым значением (13)​ нас имеется вот​ совпадение должно быть​ за квартал:​G6​Для удобства создадим именованный​

​ опыта работы с​
​ данными одного формата,​

Именованные диапазоны и оператор пересечения

​=Mar Lemons​ с возможными вариантами​ строки (значение​=ВПР(«Dan Brown2»;$A$2:$C$16;3;ЛОЖЬ)​ значениями. Этот столбец​Динамическая подстановка данных из​ лишь бы получить​

  1. ​ моем случае, я​​ с единичными (вылечил​​ из ячейки J4​​ такая ситуация:​​ абсолютно точным.​
  2. ​В данном отчете необходимо​​.​​ диапазон Список.​ функцией​​ и необходимо извлечь​​Помните, что имена строки​ и выберите наиболее​-1​Находим​ должен быть крайним​ разных таблиц​ пример как это​ так понимаю, без​ расширением стандартного поиска​ с помощью функции​Руководство по функции ВПР в Excel
  3. ​Идея в том, что​Если вы знакомы с​​ найти показатель выручки​​Для создания списка, содержащего​

    ​Диапазон может охватить в​
    ​ДВССЫЛ​
    ​ нужную информацию с​

    ​ и столбца нужно​ подходящий.​позволяет не включать​3-й​ левым в заданном​Функция​

​ сделать.​ VBA не обойтись.​ совпадений), так и​ЕСЛИ (IF)​ пользователь должен ввести​ функцией​

Руководство по функции ВПР в Excel

  1. ​ для определенного торгового​​ найденные значения, воспользуемся​​ том числе и​

​.​ определенного листа в​ разделить пробелом, который​Вы можете использовать связку​ строку заголовков). Если​товар, заказанный покупателем​

Руководство по функции ВПР в Excel

Используем несколько ВПР в одной формуле

​ для поиска диапазоне.​ВПР​emlonlife​Понимаю, что задачу​ с множественными значениями.​когда нашли совпадение, то​ в желтые ячейки​​ВПР (VLOOKUP)​​ представителя в определенную​ формулой массива:​ незаполненные ячейки перечня.​Во-первых, позвольте напомнить синтаксис​ зависимости от значения,​ в данном случае​ из функций​

​ совпадений нет, функция​Dan Brown​Итак, формула с​в Excel –​​: Как вариант можно​​ описал, видимо, не​Признаться пока не​ определяем номер строки​ высоту и ширину​или ее горизонтальным​ дату. Учитывая условия​=ИНДЕКС(Список;НАИМЕНЬШИЙ(​ В дальнейшем пользователь​ функции​​ которое введено в​​ работает как оператор​ВПР​IF​:​ВПР​​ это действительно мощный​​ делать так как​

Руководство по функции ВПР в Excel

​ очень понятно, поэтому,​ познал «дзен» в​ (столбца) первого элемента​ двери для, например,​ аналогом​​ поиска наш запрос​​ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($G$6;Список);0)=1;СТРОКА(Список)-СТРОКА($A$9);30);​​ может расширить перечень​​ДВССЫЛ​

  1. ​ заданную ячейку. Думаю,​​ пересечения.​​(VLOOKUP) и​(ЕСЛИ) возвращает пустую​​=VLOOKUP(«Dan Brown3»,$A$2:$C$16,3,FALSE)​​может быть такой:​​ инструмент для выполнения​​ в файле. Вбил​

    ​ при необходимости скину​
    ​ вашем задании параметров​

    ​ в таблице в​​ шкафа, которую он​​ГПР (HLOOKUP)​​ должен содержать 2​​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​​ инструментов, указанные ниже​​(INDIRECT):​​ проще это объяснить​​При вводе имени, Microsoft​ПОИСКПОЗ​ строку.​=ВПР(«Dan Brown3»;$A$2:$C$16;3;ЛОЖЬ)​

  2. ​=VLOOKUP(B2&» «&C2,Orders!$A&$2:$D$2,4,FALSE)​ поиска определённого значения​​ формулы в Тип​​ файл примера.​ формулы «ПОИСК». Вы​ этой строке (столбце)​ хочеть заказать у​, то должны помнить,​ условия:​​В этом случае будут​​ формулы автоматически учтут​

    ​INDIRECT(ref_text,[a1])​
    ​ на примере.​

    ​ Excel будет показывать​​(MATCH), чтобы найти​​Результатом функции​​На самом деле, Вы​​=ВПР(B2&» «&C2;Orders!$A&$2:$D$2;4;ЛОЖЬ)​​ в базе данных.​​ претензии и Дата​​Заранее благодарю за​​ сначала задаете диапазон,​ с помощью функций​

​ компании-производителя, а в​ что эта замечательные​– Дата сдачи выручки​

Руководство по функции ВПР в Excel

Динамическая подстановка данных из разных таблиц при помощи ВПР и ДВССЫЛ

​ выведены все значения,​ новые значения.​ДВССЫЛ(ссылка_на_текст;[a1])​Представьте, что имеются отчеты​ подсказку со списком​ значение на пересечении​IF​

​ можете ввести ссылку​Здесь в столбцах B​ Однако, есть существенное​ акта.​ любую помощь!​ а потом текущую​СТОЛБЕЦ (COLUMN)​ серой ячейке должна​ функции ищут информацию​ в кассу.​ которые заканчиваются или​

​Выведем в отдельный диапазон​Первый аргумент может быть​ по продажам для​ подходящих имен, так​ полей​(ЕСЛИ) окажется вот​ на ячейку в​ и C содержатся​

Руководство по функции ВПР в Excel

​ ограничение – её​Формулу можно копировать​kasan​ ячейку. Если не​и​​ появиться ее стоимость​​ только по одному​​– Фамилия торгового представителя.​​ совпадают с критерием.​ все значения Исходного​ ссылкой на ячейку​

​ нескольких регионов с​
​ же, как при​

​Название продукта​

  • ​ такой горизонтальный массив:​​ качестве искомого значения​ имена клиентов и​ синтаксис позволяет искать​ в другие ячейки​: Если Вы знаете​ сложно, разъясните на​СТРОКА (ROW)​ из таблицы. Важный​
  • ​ параметру, т.е. в​​Для решения данной задачи​ Критерий вводится в​ списка, в которых​ (стиль A1 или​ одинаковыми товарами и​ вводе формулы.​(строка) и​{1,»»,3,»»,5,»»,»»,»»,»»,»»,»»,12,»»,»»,»»}​ вместо текста, как​
  • ​ названия продуктов соответственно,​​ только одно значение.​​ и менять порядковые​​ что такое ВПР,​​ пальцах как excel​выдергиваем значение города или​ нюанс в том,​ одномерном массиве -​ будем использовать функцию​ ячейку​содержится​ R1C1), именем диапазона​ в одинаковом формате.​​Нажмите​​Месяц​ROW()-3​

Руководство по функции ВПР в Excel

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

​I6​текст-критерий (например, слово​​ или текстовой строкой.​​ Требуется найти показатели​Enter​(столбец) рассматриваемого массива:​СТРОКА()-3​ рисунке:​Orders!$A&$2:$D$2​ если требуется выполнить​ в разных книгах.​ хотите данные подтягивать​Прикладываю файл, к​​ с помощью функции​​ вводит нестандартные значения​ по столбцу. А​​ условиям и составим​​.​​ дрель). Критерий вводится​​ Второй аргумент определяет,​​ продаж для определенного​​и проверьте результат​=VLOOKUP(«Lemons»,$A$2:$I$9,MATCH(«Mar»,$A$1:$I$1,0),FALSE)​

​Здесь функция​
​Если Вы ищите только​

​определяет таблицу для​

  • ​ поиск по нескольким​​Например, для «Тип​ этой функцией?​ котором собрал все​ИНДЕКС (INDEX)​
  • ​ размеров, то они​​ если нам необходимо​ следующую формулу:​Для создания списка, содержащего​ в ячейку​​ какого стиля ссылка​​ региона:​
  • ​В целом, какой бы​​=ВПР(«Lemons»;$A$2:$I$9;ПОИСКПОЗ(«Mar»;$A$1:$I$1;0);ЛОЖЬ)​ROW​2-е​ поиска на другом​ условиям? Решение Вы​ претензии»​Для каждого листа​ возможные варианты заполнения​Kerby​ должны автоматически округлиться​ выбирать данные из​В ячейке С1 введите​​ найденные значения, воспользуемся​​С6​

Как работают ДВССЫЛ и ВПР

​ содержится в первом​Если у Вас всего​​ из представленных выше​​Формула выше – это​

​(СТРОКА) действует как​
​повторение, то можете​

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

  • ​ формулой массива:​​.​​ аргументе:​​ два таких отчета,​ методов Вы ни​
  • ​ обычная функция​​ дополнительный счётчик. Так​​ сделать это без​​Чтобы сделать формулу более​​Предположим, у нас есть​

​ листе Дисциплина в​ в каждую из​​_Boroda_​​Суть проблемы:​ в таблице и​ совпадению сразу двух​ первого критерия поискового​

​=ИНДЕКС(Список;НАИМЕНЬШИЙ(​Для создания списка, содержащего​A1​ то можно использовать​ выбрали, результат двумерного​ВПР​ как формула скопирована​ вспомогательного столбца, создав​ читаемой, Вы можете​ список заказов и​ 4ой колонке:​ которых вбейте формулу​: Убейте доллар =ЕСЛИ(A1<>»»;ПОИСКПОЗ(«*»&$A1&»*»;$C:$C;))​Есть база номеров​​ в серой ячейке​​ параметров — и​​ запроса. Например, дата:​​ЕСЛИ($I$6=ПРАВСИМВ(Список;ДЛСТР($I$6));СТРОКА(Список)-СТРОКА($A$9);30);​​ найденные значения, воспользуемся​​, если аргумент равен​ до безобразия простую​ поиска будет одним​, которая ищет точное​

​ в ячейки F4:F9,​​ более сложную формулу:​​ задать имя для​ мы хотим найти​Код INDEX(Дисциплина!$A:$R;MATCH(Претензии!H2;Дисциплина!$G:$G;0);4) Тип​ для каждого листа,​​ случайно затесался​​ изделий двух фирм​ должна появиться стоимость​ по строке и​ 22.03.2017.​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​ формулой массива:​​TRUE​​ формулу с функциями​ и тем же:​​ совпадение значения «Lemons»​​ мы вычитаем число​

​=IFERROR(VLOOKUP($F$2,INDIRECT(«$B$»&(MATCH($F$2,Table4[Customer Name],0)+2)&»:$C16″),2,FALSE),»»)​​ просматриваемого диапазона, и​​Количество товара​​ претензии на листе​​ они же разные.​

Руководство по функции ВПР в Excel

​И не должен.​ (два столбца), а​ изготовления двери для​ по столбцу одновременно?​В ячейку C2 введите​

​СОВЕТ:​
​=ИНДЕКС(Список; НАИМЕНЬШИЙ(​

​(ИСТИНА) или не​​ВПР​​Бывает так, что основная​ в ячейках от​3​=ЕСЛИОШИБКА(ВПР($F$2;ДВССЫЛ(«$B$»&(ПОИСКПОЗ($F$2;Table4[Customer Name];0)+2)&»:$C16″);2;ИСТИНА);»»)​ тогда формула станет​(Qty.), основываясь на​​ Документы в 3ей​​emlonlife​

​ Формула на это​ так же столбец​
​ этих округленных стандарных​
​ Давайте рассмотрим несколько​

​ фамилию торгового представителя​

office-guru.ru

Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск

​О поиске текстовых​ЕСЛИ(ЕСЛИОШИБКА(ПОИСК($C$6;Список);0)>0;СТРОКА(Список)-СТРОКА($A$9);30);​ указан;​и​ таблица и таблица​ A2 до A9.​из результата функции,​В этой формуле:​ выглядеть гораздо проще:​ двух критериях –​ колонке​:​

​ не рассчитана. Выделяет​ в который вписываются​ размеров.​​ жизненных примеров таких​​ (например, Новиков). Это​

Задача

​ значений с использованием​СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК(Список)))))​R1C1​ЕСЛИ​

А. Найти значения, которые содержат критерий

​ поиска не имеют​ Но так как​

​ чтобы получить значение​$F$2​=VLOOKUP(B2&» «&C2,Orders,4,FALSE)​Имя клиента​Код INDEX(Документы!$A:$Q;MATCH(Претензии!H2;Документы!$A:$A;0);3) Тип​kasan​ только в случае,​ номера прочих фирм​

​Решение для серой ячейки​ задач и их​ значение будет использоваться​​ подстановочных знаков читайте​​Алгоритм работы формулы следующий​, если​(IF), чтобы выбрать​​ ни одного общего​​ Вы не знаете,​

​1​– ячейка, содержащая​=ВПР(B2&» «&C2;Orders;4;ЛОЖЬ)​

​(Customer) и​
​ претензии на листе​
​, с ВПР знаком​

​ если в столбце​ (при их обнаружении,​ будет практически полностью​ решения.​​ в качестве второго​​ в статье Поиск​

  • ​ (для просмотра промежуточных​F​ нужный отчет для​ столбца, и это​ в каком именно​в ячейке​ имя покупателя (она​Чтобы формула работала, значения​Название продукта​ Продукция в 3ей​ только отчасти, пытаясь​ С есть что-то​ вносятся через alt+Enter).​ аналогично предыдущему примеру:​Предположим, что у нас​
  • ​ аргумента поискового запроса.​ текстовых значений в​ шагов работы формулы​ALSE​
  • ​ поиска:​ мешает использовать обычную​ столбце находятся продажи​F4​ неизменна, обратите внимание​ в крайнем левом​(Product). Дело усложняется​ колонке​ как раз решить​ из столбцов А​При подставлении номера​=ИНДЕКС(C7:K16; ПОИСКПОЗ(D3;B7:B16;1); ПОИСКПОЗ(G3;C6:K6;1))​ имеется вот такой​В ячейке C3 мы​ списках. Часть2. Подстановочные​ воспользуйтесь клавишей​
  • ​(ЛОЖЬ).​=VLOOKUP($D$2,IF($D3=»FL»,FL_Sales,CA_Sales),2,FALSE)​ функцию​
  • ​ за март, то​(строка 4, вычитаем​
  • ​ – ссылка абсолютная);​ столбце просматриваемой таблицы​ тем, что каждый​Код INDEX(Продукция!$A:$R;MATCH(Претензии!H2;Продукция!$A:$A;0);3) Да,​ эту задачу.​ и В. Поизвращаться​

​ повторно, благодаря наложенному​=INDEX(C7:K16; MATCH(D3;B7:B16;1); MATCH(G3;C6:K6;1))​ двумерный массив данных​ будем получать результат​ знаки. В статье​F9​В нашем случае ссылка​=ВПР($D$2;ЕСЛИ($D3=»FL»;FL_Sales;CA_Sales);2;ЛОЖЬ)​ВПР​ не сможете задать​ 3), чтобы получить​$B$​ должны быть объединены​ из покупателей заказывал​ формула большая. Зато​Данные одни и​​ конечно можно -​​ условному форматированию, тут-же​Разница только в последнем​ по городам и​​ поиска, для этого​​ Выделение ячеек c​

​):​ имеет стиль​Где:​​. Однако, существует ещё​​ номер столбца для​2​

Б. Найти значения, которые совпадают с критерием (точное совпадение)

​– столбец​ точно так же,​ несколько видов товаров,​ без VBA​ те же, только​ сделать сверку каждой​​ загарается «семафор». Но​​ аргументе обеих функций​

​ товарам:​ там следует ввести​ ТЕКСТом с применением​
​Функция ПОИСК(), перебирая элементы​
​A1​
​$D$2​

B. Найти значения, которые начинаются с критерия

​ одна таблица, которая​ третьего аргумента функции​в ячейке​Customer Name​ как и в​ как это видно​​P.S. вариант пустой​​ расположены они по-разному​

​ части из каждой​ если значение было​ПОИСКПОЗ (MATCH)​
​Пользователь вводит (или выбирает​
​ формулу:​
​ Условного форматирования приведено решение​

Г. Найти значения, которые заканчиваются на критерий

​ исходного списка, определяет,​, поэтому можно не​– это ячейка,​ не содержит интересующую​ВПР​F5​​;​​ критерии поиска. На​

​ из таблицы ниже:​ ячейки в найденой​ (в разных столбцах)​
​ ячейки столбца С​
​ в ячейке с​
​-​

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

excel2.ru

Поиск сразу нескольких значений в Excel

​ и разные названия​ с каждой частью​

​ несколькими значениями, то​Типу сопоставления​ в желтых ячейках​ подтверждения нажмите комбинацию​ использованием Условного форматирования.​ нем значение-критерий. Если​ и сосредоточиться на​ Обратите внимание, здесь​ имеет общий столбец​ функция​ 3) и так​– Ваша таблица​

​ объединили значения и​ВПР​kasan​ столбцов.​ других ячеек из​ условное форматирование его​(здесь он равен​ нужный товар и​ горячих клавиш CTRL+SHIFT+Enter,​Уважаемые гуру Excel, помогите​ значение не содержится,​ первом.​ мы используем абсолютные​ с основной таблицей​ПОИСКПОЗ​

​ далее.​ (на этом месте​ поставили между ними​не будет работать​, большое спасибо! вроде​Т.е. для первого​ С, но, если​ не видит.​ минус 1). Это​ город. В зеленой​ так как формула​ пожалуйста!)​

​ то возвращается ошибка​Итак, давайте вернемся к​ ссылки, чтобы избежать​ и таблицей поиска.​, чтобы определить этот​

​SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))​

​ также может быть​​ пробел, точно так​ по такому сценарию,​ бы как раз​ листа все данные​ даже и получится,​Вопрос:​ некий аналог четвертого​ ячейке нам нужно​ должна быть выполнена​Мне нужно каждый​ #ЗНАЧ! В противном​

​ нашим отчетам по​​ изменения искомого значения​
​Давайте разберем следующий пример.​ столбец.​НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3))​
​ обычный диапазон);​

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

​ же необходимо сделать​ поскольку она возвратит​ то, что нужно​ будут подтягиваться в​ то формула будет​Можно как-то научить​ аргумента функции​ формулой найти и​ в массиве.​ раз искать кучу​ случае возвращается числовое​ продажам. Если Вы​ при копировании формулы​ У нас есть​MATCH(«Mar»,$A$1:$I$1,0)​Функция​$C16​ в первом аргументе​ первое найденное значение,​

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

​ осталось разобраться как​ одни и те​ огромная и тормознутая.​ систему видеть совпадения​ВПР (VLOOKUP) — Интервального​ вывести число из​Результат поиска в таблице​

Отчет по торговым агентам.

​ значений в накладных​ значение, соответствующее номеру​ помните, то каждый​ в другие ячейки.​ основная таблица (Main​ПОИСКПОЗ(«Mar»;$A$1:$I$1;0)​SMALL​– конечная ячейка​

  1. ​ функции (B2&» «&C2).​ соответствующее заданному искомому​
  2. ​ следует)))​

​ же ячейки.​Цитата​ в ячейкас с​ просмотра (Range Lookup)​ таблицы, соответствующее выбранным​

  1. ​ по двум условиям:​ Excel — это​ начальной позиции вхождения​ отчёт – это​$D3​
  2. ​ table) со столбцом​В переводе на человеческий​(НАИМЕНЬШИЙ) возвращает​ Вашей таблицы или​Запомните!​ значению. Например, если​
  3. ​sinnovo​Скажем, лист 1,​Kerby, 20.06.2014 в​ несколькими значениями.​. Вообще говоря, возможных​
  4. ​ параметрам. Фактически, мы​Найдена сумма выручки конкретного​ может быть штрихкод,​ критерия в значение​ отдельная таблица, расположенная​– это ячейка​

​SKU (new)​ язык, данная формула​

ВПР с несколькими значениями.

​n-ое​ диапазона.​Функция​

​ Вы хотите узнать​

​: Добрый день!​ столбец1, строка2.​ 13:13, в сообщении​

​Прилагаю простенький файл-пример.​ значений для него​ хотим найти значение​ торгового представителя на​ часть наименования, артикул​ из списка (здесь​ на отдельном листе.​ с названием региона.​, куда необходимо добавить​ означает:​наименьшее значение в​Эта формула находит только​ВПР​ количество товара​Необходимо из листа​В листе2 ищем​ № 8200?’200px’:»+(this.scrollHeight+5)+’px’);»>не познал​Pelena​ три:​

​ ячейки с пересечения​ конкретную дату.​ и др. Работа​ нам не важен​ Чтобы формула работала​

  1. ​ Используем абсолютную ссылку​
  2. ​ столбец с соответствующими​
  3. ​Ищем символы «Mar» –​

​ массиве данных. В​ второе совпадающее значение.​ограничена 255 символами,​Sweets​ «свод», в котором​ значение ячейки А2​ «дзен» в вашем​: Так подойдёт?​1​ определенной строки и​​ рутинная и хочется​ номер позиции, важно,​ верно, Вы должны​ для столбца и​ ценами из другой​ аргумент​ нашем случае, какую​ Если же Вам​ она не может​, заказанное покупателем​ вся ДЗ скопировать​ листа1 в столбце​ задании параметров формулы​Kerby​- поиск ближайшего​ столбца в таблице.​Разбор принципа действия формулы​ ее автоматизировать, т.​ что это число);​ дать названия своим​ относительную ссылку для​ таблицы. Кроме этого,​lookup_value​ по счёту позицию​ необходимо извлечь остальные​ искать значение, состоящее​Jeremy Hill​ в отдельный лист​ G и при​

​ «ПОИСК». Вы сначала​: Да, спасибо огромное!​ наименьшего числа, т.е.​

​ Для наглядности, разобъем​ для функции ВПР​ к. значения, которые​Функция ЕСЛИОШИБКА() используется для​

​ таблицам (или диапазонам),​ строки, поскольку планируем​ у нас есть​(искомое_значение);​ (от наименьшего) возвращать​

exceltable.com

Двумерный поиск в таблице (ВПР 2D)

​ повторения, воспользуйтесь предыдущим​ из более чем​​, запишите вот такую​​ «свыше 1 млн»​ совпадении, копируем некоторые​​ задаете диапазон, а​​ Ушел анализировать формулу)​ введенные пользователем размеры​ задачу на три​ с несколькими условиями:​ нужно искать, известны​ подавления ошибки #ЗНАЧ!​ причем все названия​ копировать формулу в​ 2 таблицы поиска.​Ищем в ячейках от​ – определено функцией​ решением.​ 255 символов. Имейте​ формулу:​ только тех контрагентов​ значения этой строки​ потом текущую ячейку.​ Плюс!​ двери округлялись бы​

Пример 1. Найти значение по товару и городу

​ этапа.​Первым аргументом функции =ВПР()​ заранее.​ заменяя ее на​ должны иметь общую​

Поиск вȎxcel нескольких значений одновременно

​ другие ячейки того​ Первая (Lookup table​ A1 до I1​ROW​Если Вам нужен список​ это ввиду и​=VLOOKUP(B1,$A$5:$C$14,3,FALSE)​ и суммы, задолженность​ (например, D2 Листа2​ На пальцах -​Kerby​ до ближайших наименьших​Во-первых, нам нужно определить​ является первым условием​Может быть, есть​ число 0;​ часть. Например, так:​

  • ​ же столбца.​ 1) содержит обновленные​ – аргумент​(СТРОКА) (смотри Часть​ всех совпадений –​ следите, чтобы длина​​=ВПР(B1;$A$5:$C$14;3;ЛОЖЬ)​​ по которым свыше​​ копируем в B2​ ищем все значения​​: Заменой зоны работы​​ подходящих размеров из​​ номер строки, соответствующей​ для поиска значения​​ какая-то функция, которая​​Функция ЕСЛИ() заменяет числовые​CA_Sales​FL_Sal​ номера​​lookup_array​​ 2). Так, для​ функция​ искомого значения не​– эта формула вернет​ 1 млн. руб.​ Листа1, F2 в​ диапазона в ячейке.​ формулы ПОИСК с​ таблицы. В нашем​ выбранному пользователем в​ по таблице отчета​
  • ​ по единожды составленному​ значения, возвращенные функцией​,​es​SKU (new)​(просматриваемый_массив);​​ ячейки​​ВПР​ превышала этот лимит.​​ результат​​ Прошу помочь! Заранее​ С2). В листе3​ Получаем массив ошибок​
  • ​ $A$1:$C$7 на $A:$C​ случае высота 500​ желтой ячейке товару.​ выручки торговых представителей.​ мною списку будет​ ПОИСК(), на номер​FL_Sales​​и​​и названия товаров,​Возвращаем точное совпадение –​​F4​тут не помощник,​​Соглашусь, добавление вспомогательного столбца​15​ спасибо!​ данные те же,​ (если не нашли)​ отправил эксель в​ округлилась бы до​ Это поможет сделать​ Во втором аргументе​ искать нужные строки​ позиции значения в​

​,​CA_Sales​ а вторая (Lookup​ аргумент​

​функция​

​ поскольку она возвращает​ – не самое​

Пример 2. Приблизительный двумерный поиск

​, соответствующий товару​Czeslav​ но они в​ и каких-то чисел​

Поиск вȎxcel нескольких значений одновременно

​ космическое путешествие, до​ 450, а ширина​ функция​ находится виртуальная таблица​ и допустим выделять​ списке. Если значение​TX_Sales​– названия таблиц​ table 2) –​match_type​НАИМЕНЬШИЙ({массив};1)​ только одно значение​ изящное и не​Apples​: Вариант для ексель2010+,​ других столбцах.​ (если нашли). ЕЧИСЛО​ альфы-центара не долетел,​ 480 до 300,​ПОИСКПОЗ (MATCH)​ создана в результате​ их цветом. Загвоздка​ =0 (соответствует ошибке​

​и так далее.​ (или именованных диапазонов),​ названия товаров и​

​(тип_сопоставления).​

​возвращает​

​ за раз –​ всегда приемлемое решение.​​, так как это​​ т.к. для решения​​Таким образом нужно​​ преобразовывает все это​ грохнул процесс. Похоже​ и стоимость двери​из категории​​ массивного вычисления логической​ еще в том,​​ #ЗНАЧ!), то возвращается​ Как видите, во​ в которых содержаться​

  • ​ старые номера​​Использовав​1-й​ и точка. Но​ Вы можете сделать​ первое совпадающее значение.​ использована функция АГРЕГАТ.​ все значения столбца​ в ЛОЖЬ и​ надо быть осторжней​ была бы 135.​Ссылки и массивы (Lookup​ функцией =ЕСЛИ(). Каждая​ что по одному​
  • ​ число 30. В​​ всех именах присутствует​ соответствующие отчеты о​SKU (old)​0​(наименьший) элемент массива,​ в Excel есть​ то же самое​Есть простой обходной путь​sinnovo​ А в Листе1​ ИСТИНА соответственно. ЕСЛИ($A$1:$B$5<>»»​
  • ​ в своих желаниях…​​-1​ and Reference)​ фамилия в диапазоне​ значению (к примеру,​ принципе, вместо 30​ «_Sales».​ продажах. Вы, конечно​.​в третьем аргументе,​ то есть​ функция​ без вспомогательного столбца,​

​ – создать дополнительный​: Czeslav, огромное спасибо.​ искать в трех​ — заранее отсекает​Pelena​- поиск ближайшего​. В частности, формула​ ячеек B6:B12 сравнивается​ одному штрихкоду) в​ можно указать любое​Функция​ же, можете использовать​Чтобы добавить цены из​ Вы говорите функции​​1​INDEX​

​ но в таком​ столбец, в котором​ О такой функции​ других листах и​ пустые ячейки. ИЛИ​

P.S. Обратная задача

​: Так должно быстрее​ наибольшего числа, т.е.​ПОИСКПОЗ(J2; A2:A10; 0)​ со значением в​ накладной может быть​ число, которое больше​ДВССЫЛ​ обычные названия листов​ второй таблицы поиска​ПОИСКПОЗ​. Для ячейки​(ИНДЕКС), которая с​ случае потребуется гораздо​​ объединить все нужные​​ даже и не​​ подтягивать нужные данные.​​ — если в​

Поиск вȎxcel нескольких значений одновременно

​ работать​

  1. ​ нестандартная высота 500​даст нам нужный​ ячейке C2. Таким​ несколько позиций -​ номера последней заполненной​соединяет значение в​​ и ссылки на​
  2. ​ в основную таблицу,​искать первое значение,​F5​ легкостью справится с​ более сложная формула​ критерии. В нашем​​ знал.)​​ Совпадений на этих​​ массиве есть хоть​
  3. ​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(A1<>»»;СУММ(—ЕЧИСЛО(ПОИСК(A1;$A:$C)))>1)​ округлялась бы до​ результат (для​​ образом в памяти​

planetaexcel.ru

Поиск совпадений, при наличии нескольких значений в ячейке (Формулы/Formulas)

​ мне нужны они​​ позиции Исходного списка​
​ столбце D и​
​ диапазоны ячеек, например​ необходимо выполнить действие,​ в точности совпадающее​возвращает​ этой задачей. Как​ с комбинацией функций​ примере это столбцы​Руководство не много​
​ трех листах не​ одно ИСТИНА, то​Но оперировать со​ 700, а ширина​Яблока​ создается условный массив​ все.​ (это нужно для​ текстовую строку «_Sales»,​
​‘FL Sheet’!$A$3:$B$10​
​ известное как двойной​ с искомым значением.​2-й​ будет выглядеть такая​
​INDEX​

​Имя клиента​​ усложнило задачу, а​

​ может быть (т.е.​​ дает ИСТИНА​ столбцами целиком всё​ 480 — до​

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

​(ИНДЕКС) и​​(Customer) и​ именно хочет, чтобы​
​ искомое значение не​
​Kerby​ же не рекомендуется​ 600 и стоимость​

​ 6). Первый аргумент​​ значений ИСТИНА и​ но она не​ НАИМЕНЬШИЙ());​ВПР​ гораздо удобнее.​или вложенный​
​FALSE​ то есть​ в следующем примере.​MATCH​Название продукта​ в листе «свыше​ может быть одновременно,​:​

​Kerby​​ составила бы уже​ этой функции -​
​ ЛОЖЬ.​
​ подходит, т. к.​Функция НАИМЕНЬШИЙ() сортирует массив​в какой таблице​
​Однако, когда таких таблиц​ВПР​
​(ЛОЖЬ) для четвёртого​
​3​Как упоминалось выше,​
​(ПОИСКПОЗ).​
​(Product). Не забывайте,​ 1 млн» выходили​ например, в листе2​
​_Boroda_​: Нет, снова попытка​ 462. Для бизнеса​ искомое значение (​
​Потом благодаря формуле, в​ ей нужные точные​ номеров строк по​

​ искать. Если в​​ много, функция​​.​​ аргумента​, и так далее.​ВПР​Вы уже знаете, что​
​ что объединенный столбец​ все контрагенты и​ и листе3, а​, спасибо за ответ.​ межзведного перелета. Я​ так гораздо интереснее!​Яблоко​ памяти программы каждый​ данные (а у​ возрастанию;​
​ ячейке D3 находится​ЕСЛИ​Запишите функцию​ВПР​INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))​не может извлечь​ВПР​ должен быть всегда​ суммы по ним,​
​ только в каком-то​ То же стал​ задал до 2222​ :)​из желтой ячейки​ истинный элемент заменяется​ меня может быть​Функция ДВССЫЛ() возвращает массив​ значение «FL», формула​– это не​
​ВПР​.​ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3))​ все повторяющиеся значения​

​может возвратить только​​ крайним левым в​ задолженность по которым​
​ из них).​ приходить к мнению,​ строки, мне хватит​0​ J2), второй -​ на 3-х элементный​ только часть наименования)​ последовательных чисел;​ выполнит поиск в​ лучшее решение. Вместо​, которая находит имя​Вот так Вы можете​Функция​ из просматриваемого диапазона.​ одно совпадающее значение,​ диапазоне поиска, поскольку​ свыше 1 млн.​emlonlife​
​ что сравнивание и​​ и обаботка долго​- поиск точного​ диапазон ячеек, где​ набор данных:​ и выдает она​Функция ИНДЕКС() возвращает текстовые​ таблице​ нее можно использовать​ товара в таблице​ создать формулу для​INDEX​ Чтобы сделать это,​ точнее – первое​ именно левый столбец​ руб. независимо от​:​ выделение ячеек с​ не идет.​ соответствия без каких​ мы ищем товар​элемент – Дата.​ только одну позицию,​ значения из Исходного​FL_Sales​

​ функцию​​Lookup table 1​​ поиска по двум​​(ИНДЕКС) просто возвращает​ Вам потребуется чуть​ найденное. Но как​ функция​ договора. Может и​emlonlife​ множественными значениями просто​Заметил одну особенность,​ либо округлений. Используется​ (столбец с товарами​
​элемент – Фамилия.​ а мне нужны​ списка, из строк,​
​, если «CA» –​
​ДВССЫЛ​
​, используя​
​ критериям в Excel,​

​ значение определённой ячейки​ более сложная формула,​

excelworld.ru

Поиск на нескольких листах определенных значений и подтягивание найденных строк в другой лист

​ быть, если в​​ВПР​
​ это знает кто-нибудь​, пример будете прикладывать?​ так не решить.​ которую не увидел​
​ для 100%-го совпадения​ в таблице -​элемент – Выручка.​ все по заданному​ номера которых были​ в таблице​(INDIRECT), чтобы возвратить​SKU​ что также известно,​ в массиве​ составленная из нескольких​ просматриваемом массиве это​просматривает при поиске​ как сделать?​emlonlife​ Спасибо, что остановили​ в начале -​ искомого значения с​ A2:A10), третий аргумент​А каждый ложный элемент​ критерию.​ получены на предыдущем​CA_Sales​ нужный диапазон поиска.​, как искомое значение:​ как двумерный поиск​
​C2:C16​ функций Excel, таких​ значение повторяется несколько​ значения.​Czeslav​:​ от борьбы с​ а можно сделать​ одним из значений​ задает тип поиска​
​ в памяти заменяется​Вопрос, наверное, глупый.​ шаге.​и так далее.​Как Вы, вероятно, знаете,​
​=VLOOKUP(A2,New_SKU,2,FALSE)​ или поиск в​

​. Для ячейки​​ как​ раз, и Вы​Итак, Вы добавляете вспомогательный​: Предлагаю такой вариант​Fairuza​
​ «ветрянными мельницами».​ так, чтобы и​ в таблице. Естественно,​ (0 — точное​ на 3-х элементный​ Но прошу помидорами​

​В предельном случае м.б.​​Результат работы функций​​ функция​​=ВПР(A2;New_SKU;2;ЛОЖЬ)​ двух направлениях.​F4​INDEX​
​ хотите извлечь 2-е​ столбец в таблицу​ с дополнительной таблицей,​, да, сейчас подготовлю,​В итоге думаю​ в 3-й колонке​
​ применяется при поиске​ совпадение наименования, приблизительный​ набор пустых текстовых​ не закидывать, с​ найдено столько же​
​ВПР​ДВССЫЛ​
​Здесь​Функция​функция​(ИНДЕКС),​ или 3-е из​ и копируете по​ которую можно получить​ упрощу и прикреплю.​ оставить связку из​ выделялась ячейка с​ текстовых параметров (как​ поиск запрещен).​ значений («»). В​
​ Excel вплотную не​ значений, сколько содержится​и​используется для того,​New_SKU​СУММПРОИЗВ​ИНДЕКС($C$2:$C$16;1)​SMALL​ них? А что​ всем его ячейкам​ с помощью формулы​kasan​ двух правил:​ совпадением?​ в прошлом примере),​

​Во-вторых, совершенно аналогичным способом​​ результате создается в​​ работаю…)​​ в исходном списке​

​ДВССЫЛ​​ чтобы вернуть ссылку,​​– именованный диапазон​​(SUMPRODUCT) возвращает сумму​возвратит​

​(НАИМЕНЬШИЙ) и​​ если все значения?​ формулу вида:​
​ или, ещё проще,​: Итак, пример во​200?’200px’:»+(this.scrollHeight+5)+’px’);»>A:C​_Boroda_​ т.к. для них​ мы должны определить​ памяти программы новая​Заранее огромное спасибо!​ (когда все значения​будет следующий:​ заданную текстовой строкой,​$A:$B​ произведений выбранных массивов:​Apples​

  1. ​ROW​ Задачка кажется замысловатой,​
  2. ​=B2&C2​ с помощью консолидации,​
  3. ​ вложении.​=ЕСЛИ(A1<>»»;СУММ(—ЕЧИСЛО(ПОИСК(A1;$A$1:$C$2222)))>1)​

​: Сделал 3 типа​ округление невозможно.​ порядковый номер столбца​ таблица, с которой​Палычь​ удовлетворяют критерию). Поэтому​Если данные расположены в​ а это как​в таблице​=SUMPRODUCT(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»),$A$2:$I$9)​, для​(СТРОКА)​ но решение существует!​. Если хочется, чтобы​ а далее вспользоваться​Лист «Претензии». В​C:C​ УФ​Важно отметить, что при​
​ в таблице с​ уже будет работать​: можно организовать столбец,​ формулу массива нужно распространять​ разных книгах Excel,​ раз то, что​Lookup table 1​

​=СУММПРОИЗВ(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»);$A$2:$I$9)​​F5​Например, формула, представленная ниже,​Предположим, в одном столбце​ строка была более​ фильтром или первым​ него и необходимо​
​=ИЛИ(ЕСЛИ($A$1:$B$2222<>»»;ЕЧИСЛО(ПОИСК(«*»&СИМВОЛ(10)&$A$1:$B$2222&СИМВОЛ(10)&»*»;СИМВОЛ(10)&C1&СИМВОЛ(10)))))​Для столбцов А:В​ использовании приблизительного поиска​ нужным нам городом.​ функция ВПР. Она​
​ в котором появится,​ на диапазон той​
​ то необходимо добавить​ нам сейчас нужно.​, а​
​В следующей статье я​функция​ находит все повторения​ таблицы записаны имена​
​ читаемой, можно разделить​ моим вариантом.​ копировать данные из​С назначением разных​
​1. Просто поиск​ с округлением диапазон​ Функция​
​ игнорирует все пустые​ например, цифра, если​ же размерности, что​

​ имя книги перед​​ Итак, смело заменяем​2​ буду объяснять эти​ИНДЕКС($C$2:$C$16;3)​ значения из ячейки​

CyberForum.ru

Поиск и вывод нескольких значений по условию

​ клиентов (Customer Name),​​ объединенные значения пробелом:​
​Также Вашу проблему​ других листов. Поиск​ цветов.​ повторов в столбцах​ поиска — а​ПОИСКПОЗ(J3; B1:F1; 0)​ наборы данных элементов.​ в какой-то другой​ и исходный список.​ именованным диапазоном, например:​ в представленной выше​

​– это столбец​​ функции во всех​возвратит​ F2 в диапазоне​

​ а в другом​​=B2&» «&C2​ с помощью сводной​ производится при ручном​emlonlife​
​ А:В​ значит и вся​сделает это и​ А непустые элементы​ строке таблицы правее​ Вышеуказанная формула массива​=VLOOKUP($D$2,INDIRECT($D3&»Workbook1!_Sales»),2,FALSE)​ формуле выражение с​ B, который содержит​ деталях, так что​Sweets​ B2:B16 и возвращает​ – товары (Product),​

​. После этого можно​​ таблицы.​ заполнении столбца «Номер​: Здравствуйте.​2. Есть повтор​ таблица — должна​ выдаст, например, для​ сопоставляются со значением​ будет искомое. так​ будет возвращать несколько​
​=ВПР($D$2;ДВССЫЛ($D3&»Workbook1!_Sales»);2;ЛОЖЬ)​ функцией​ названия товаров (смотрите​

CyberForum.ru

​ сейчас можете просто​

Поиск по двум словам в свободной последовательности

nik2015

Дата: Среда, 18.11.2015, 00:44 |
Сообщение № 1

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

Ранг: Прохожий

Сообщений: 3


Репутация:

0

±

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


Excel 2007

Доброго времени суток! Можно ли из большого множества найти через поиск (Ctrl+F) ячейку, например с названием «Освежитель на зеркало Зимний аромат новогодняя свеча новая машина», указав в поиске ключевые слова «свеча», «освежитель»? Или если не через поиск, то какие могут быть еще варианты?
Заранее благодарен!
[moder]Файл покажите

Сообщение отредактировал _Boroda_Среда, 18.11.2015, 01:06

 

Ответить

Pelena

Дата: Среда, 18.11.2015, 08:40 |
Сообщение № 2

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

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

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

указав в поиске ключевые слова «свеча», «освежитель»

*освежитель*свеча*, но важен порядок


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

TimSha

Дата: Среда, 18.11.2015, 08:56 |
Сообщение № 3

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

Ранг: Ветеран

Сообщений: 627


Репутация:

94

±

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


Excel 2013 Pro +

какие могут быть еще варианты?

Один из 1000 — расширенный фильтр… ;)


«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

Ответить

nik2015

Дата: Среда, 18.11.2015, 09:56 |
Сообщение № 4

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

Ранг: Прохожий

Сообщений: 3


Репутация:

0

±

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


Excel 2007


nik2015,
Наименований в полном прайсе около 100 000 и не знаешь точную последовательность ключевых слов

К сообщению приложен файл:

9133798.xlsx
(79.6 Kb)

 

Ответить

Nic70y

Дата: Среда, 18.11.2015, 10:06 |
Сообщение № 5

Группа: Друзья

Ранг: Экселист

Сообщений: 8132


Репутация:

1998

±

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


Excel 2010

Вариант:
фильтр — текстовый фильтр — содержит и содержит


ЮMoney 41001841029809

 

Ответить

nik2015

Дата: Среда, 18.11.2015, 10:48 |
Сообщение № 6

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

Ранг: Прохожий

Сообщений: 3


Репутация:

0

±

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


Excel 2007

фильтр — текстовый фильтр — содержит и содержит

Nic70y, большое спасибо! Хороший, удобный вариант. Спасибо всем, кто откликнулся!

 

Ответить

  • Поиск по одному слову
    • Фильтрация по слову в Excel
    • Поиск по слову в ячейке: формула
    • Поиск по слову в Excel с помощью !SEMTools
  • Поиск по нескольким словам
    • Найти любое слово из списка
    • Найти все слова из списка

Чем отличается поиск по словам от простого поиска текста?

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

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

Поиск по одному слову

Рассмотрим сначала простой случай — когда найти нужно одно слово.

Фильтрация по слову в Excel

Процедура фильтрации в Excel содержит 3 метода текстовой фильтрации, иными словами, фильтровать можно по 3 критериям вхождения слова:

  1. ячейка содержит слово — тогда ставим пробелы перед и после слова;
  2. начинается с него — пробел после;
  3. заканчивается на него — пробел перед ним.

Проблема заключается в том, что в Excel нельзя фильтровать сразу по 3 критериям – можно только по двум. В этой ситуации есть простой лайфхак:

  1. Сделать копию исходного столбца;
  2. Удалить все символы, кроме текста и цифр (и пробелов между ними);
  3. Добавить символы в конце и начале каждой ячейки столбца, например, символ “”;
  4. Заменить оставшиеся пробелы на этот же символ;
  5. После этого фильтровать по полученному столбцу уже наше слово с “” перед и после него (пример – “слово”).

Символ как раз и поможет отфильтровать целые слова.

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

Смотрите пример ниже:

фильтр по слову в Excel - пример

Фильтр столбца по слову, даже самому короткому

Можно сделать иначе — добавить в начале и конце строк пробелы, но тогда при поиске и фильтрации слова перед пробелом слева и после пробела справа нужно использовать символ “*” (звездочку). Иначе Excel не учтет пробелы.

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

Поиск по слову в ячейке: формула

Идеальной функцией для формулы поиска слова будет функция ПОИСК.

Формула:

=ПОИСК(" "&"вашеСлово"&" ";" "&A1&" ")>0

где вашеСлово — искомое слово, а A1 — ячейка, в которой мы его ищем.

Однако нужно помнить, что пунктуацию нужно предварительно удалить.

Найти слово с помощью формулы

Поиск по слову в Excel с помощью !SEMTools

Пожалуй, самое быстрое решение, доступное владельцам полной версии моей надстройки для Excel. Алгоритм простой — выделяем диапазон, жмем макрос, вводим слово, жмем «ОК».

найти слово в списке ячеек

Поиск по нескольким словам

Как выяснить для каждой ячейки большого диапазона, присутствует ли в ней хотя бы одно из списка слов? Да так, чтобы слово не просто содержалось внутри строки, в том числе внутри других слов, а находить именно целые слова? А если нужно найти пару сотен слов в десятках тысяч ячеек?

Найти любое слово из списка

Настройка !SEMTools с лёгкостью решает такого рода проблемы. Более того, практически вне зависимости от количества слов, распознавание их наличия происходит очень быстро даже в диапазоне из 10 000 ячеек и более.

Чтобы найти список слов диапазоне ячеек с помощью !SEMTools, нужно:

  1. скопировать в соседний столбец диапазон, в котором мы хотим найти список слов. Это нужно для того, чтобы не стереть исходные данные,
  2. вызвать макрос на панели настройки,
  3. выбрать список слов, которые необходимо найти,
  4. нажать OK.

Макрос даёт проверить, есть ли хотя бы одно слово из списка в ячейке.

Конкретные примеры использования

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

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

Если вас интересует, присутствуют ли в прайс-листе товары определенных производителей, список которых у вас уже имеется, или каковы остатки товара на складе по этим позициям, вам также может пригодиться данный макрос.

Найти все слова из списка

Данная процедура производит тот же поиск по словам, но с кардинальным отличием. Ключевое условие — чтобы ВСЕ слова содержались в ячейке, только тогда она возвращает ИСТИНА.

Нужно сделать поиск в Excel по словам?
!SEMTools поможет решить задачу за пару кликов!

Skip to content

Поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям

В статье показано, как выполнять быстрый поиск с несколькими условиями в Excel с помощью ИНДЕКС и ПОИСКПОЗ.

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

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

  • Общая формула поиска по нескольким критериям
  • Пример формулы массива
  • Поиск по нескольким условиям без формулы массива
  • ИНДЕКС ПОИСКПОЗ с несколькими условиями в нескольких строках и столбцах

Как сделать поиск с несколькими условиями

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

Чтобы найти значение на основе нескольких критериев в отдельных столбцах, используйте эту общую формулу:

{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ) * (…); 0))}

Где:

  • Диапазон_возврата — это диапазон, из которого возвращается значение.
  • Критерии1 , критерии2 , … – это условия, которые необходимо выполнить.
  • Диапазон1 , диапазон2 , … — это диапазоны, на которых должны проверяться соответствующие критерии.

Важное замечание! Это формула массива , и она должна быть введена через Ctrl + Shift + Enter. Появятся {фигурные скобки}, что является визуальным признаком формулы массива в Excel. Не пытайтесь вводить фигурные скобки вручную, это не сработает!

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

ИНДЕКС ПОИСКПОЗ по нескольким столбцам – пример формулы

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

Вот наши исходные данные и критерии:

  • Диапазон_возврата (продажи) — D2:D13
  • Критерий1 (целевой регион) – G1
  • Критерий2 (целевой месяц) – G2
  • Критерий 3 (целевой товар) — G3
  • Диапазон1 (регионы) – A2:A13
  • Диапазон2 (месяцы) – B2:B13
  • Диапазон3 (товары) – C2:C13

Формула принимает следующий вид:

=ИНДЕКС(D2:D13; ПОИСКПОЗ(1; (G1=A2:A13)*(G2=B2:B13)*(G3=C2:C13); 0))

Запишем формулу в G4, завершим ее, нажав Ctrl+Shift+Enter. Получаем следующий результат:

Как это работает? Разберем пошагово.

Самая сложная часть — это функция ПОИСКПОЗ, так что давайте пошагово рассмотрим логику ее работы:

ПОИСКПОЗ(1; (G1=A2:A13)*(G2=B2:B13)*(G3=C2:C13)

Как вы помните, ПОИСКПОЗ ищет заданное значение в массиве и возвращает относительное его положение в этом массиве.

В нашей формуле аргументы следующие:

  • Искомое_значение : 1
  • Массив поиска : (G1=A2:A13) * (G2=B2:B13) * (G3=C2:C13)
  • Тип_соответствия : 0

Шаг 1.

Первый аргумент предельно ясен — функция ищет число 1. Третий аргумент, установленный в 0, означает «точное совпадение», т.е. формула возвращает первое найденное значение, которое точно равно искомому значению.

Вопрос в том, почему мы ищем «1»? Чтобы получить ответ, давайте внимательнее посмотрим на массив поиска, где мы сравниваем каждый наш критерий с соответствующим диапазоном: целевой регион в ячейке G1 со всеми регионами (A2: A13), целевой месяц в G2 со всеми месяцами (B2: B13), и товар в G3 в колонке товаров (C2:C13). В результате этих сравнений мы имеем 3 массива значений ИСТИНА и ЛОЖЬ, где ИСТИНА представляет значения, соответствующие условию. Чтобы визуализировать это, вы можете выбрать отдельное выражение в формуле и нажать клавишу F9 , чтобы увидеть, что оно возвращает:

=ИНДЕКС(D2:D13; ПОИСКПОЗ(1; {ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ИСТИНА:ИСТИНА:ИСТИНА:ИСТИНА:ИСТИНА}*{ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ИСТИНА:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ}*{ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА}; 0))

Шаг 2.

Операция умножения преобразует значения ИСТИНА и ЛОЖЬ в 1 и 0 соответственно:

{0:0:0:0:0:0:1:1:1:1:1:1}*{0:0:1:0:0:1:1:1:0:0:0:0}*{0:1:0:1:0:1:0:1:0:1:0:1}

Шаг 3.

А поскольку умножение на 0 всегда дает 0, результирующий массив содержит 1 только в тех строках, которые соответствуют всем трём условиям:

{0:0:0:0:0:0:0:1:0:0:0:0}

Приведенный выше массив переходит в аргумент массив_поиска функции ПОИСКПОЗ. Функция возвращает порядковый номер позиции с цифрой 1, для которой все критерии имеют значение ИСТИНА (строка 8 в нашем случае). Если в массиве будет несколько единиц, будет определена позиция только первой из них.

Шаг 4.

Число, возвращаемое функцией ПОИСКПОЗ, поступает непосредственно в аргумент номер_строки функции ИНДЕКС(массив, номер_строки, [номер_столбца]):

=ИНДЕКС(D2:D13, 8)

И это дает результат 680, что является восьмым по счету значением в массиве D2:D13.

Формула ИНДЕКС ПОИСКПОЗ без массива с несколькими критериями

Формула массива, рассмотренная в предыдущем примере, хорошо работает для опытных пользователей. Но если вы строите формулу для кого-то другого, и этот кто-то не знает о работе с формулами массива в Excel, то он может непреднамеренно ее сломать. Например, пользователь может щелкнуть вашу формулу, чтобы изучить ее, а затем нажать Enter вместо Ctrl + Shift + Enter. 

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

ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ИНДЕКС(( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ) * (..); 0; 1); 0))

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

=ИНДЕКС(D2:D13; ПОИСКПОЗ(1; ИНДЕКС((G1=A2:A13) * (G2=B2:B13) * (G3=C2:C13); 0; 1); 0))

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

Поскольку функция ИНДЕКС умеет работать с массивами, мы добавляем еще один ИНДЕКС для обработки массива единиц и нулей, созданного путем умножения двух или более массивов ИСТИНА/ЛОЖЬ. Второй ИНДЕКС настроен с аргументом номер_строки равным нулю, чтобы формула возвращала весь столбец, а не одно значение. Поскольку в любом случае это массив из одного столбца, мы можем безопасно поставить 1 для номер_столбца :

ИНДЕКС({0:0:0:0:0:0:0:1:0:0:0:0};0, 1)  возвращает {0:0:0:0:0:0:0:1:0:0:0:0}

Этот массив передается в функцию ПОИСКПОЗ:

ПОИСКПОЗ(1; {0:0:0:0:0:0:0:1:0:0:0:0}; 0)

ПОИСКПОЗ находит номер позиции, для которого все условия – ИСТИНА (точнее, ищет относительное положение цифры «1» в указанном массиве), и передает номер этой позиции в аргумент номер_строки первого ИНДЕКС:

=ИНДЕКС(D2:D13, 8)

Ну и далее получаем нужный результат.

ИНДЕКС ПОИСКПОЗ с несколькими условиями в нескольких строках и столбцах

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

Вот общая формула ИНДЕКС ПОИСКПОЗ с несколькими критериями в строках и столбцах:

{=ИНДЕКС( массив_таблицы ; ПОИСКПОЗ( значение_поиска ; столбец_поиска ; 0); ПОИСКПОЗ( значение_поиска1 & значение_поиска2 ; строка_поиска1 & строка_поиска2 ; 0))}

где:

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

Значение_поиска — то, что вы ищете по вертикали в столбце.

Столбец_поиска — диапазон столбцов для поиска, обычно это заголовки строк.

Значение_поиска1, значение_поиска2, … — то, что вы ищете по горизонтали в строках.

Строка_поиска1, строка_поиска2, … — диапазоны строк для поиска, обычно это заголовки столбцов.

Важное замечание! Чтобы формула работала корректно, ее нужно вводить как формулу массива  при помощи комбинации Ctrl + Shift + Enter.

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

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

  • Массив_таблицы — B3:E4
  • Значение_поиска  — H1
  • Столбец_поиска  (заголовки строк: товары) — A3:A5
  • Значение_поиска1  (целевой регион) — H2
  • Значение_поиска 2 (целевой продавец) — H3
  • Строка_поиска1 (заголовки столбцов 1: регионы) — B1:E1
  • Строка_поиска2 (заголовки столбцов 2: продавцы) — B2:E2

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

=ИНДЕКС(B3:E5; ПОИСКПОЗ(H1;A3:A5;0); ПОИСКПОЗ(H2&H3; B1:E1&B2:E2; 0))

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

Пошагово рассмотрим, как работает эта формула.

Поскольку мы ищем и по вертикали, и по горизонтали, то нужно указать номера строк и столбцов для функции ИНДЕКС (массив, номер_строки, номер_столбца).

Шаг 1.

Номер_строки предоставляется функцией ПОИСКПОЗ(H1;A3:A5;0), которая сравнивает целевой элемент (бананы) в H1 с заголовками строк в A3:A5. 

ПОИСКПОЗ(«Бананы»;{«Апельсины»:»Бананы»:»Лимоны»};0)

Это дает результат 2, потому что «Бананы» — это второй элемент в указанном списке.

Шаг 2.

Номер_столбца вычисляется путем объединения двух значений поиска и двух массивов поиска: ПОИСКПОЗ(H2&H3; B1:E1&B2:E2; 0)

Необходимым условием является то, что значения поиска должны точно соответствовать заголовкам столбцов и быть объединены в том же порядке. Чтобы проследить процесс поиска, выберите первые два аргумента в формуле ПОИСКПОЗ, затем нажмите F9, и вы увидите, что оценивает каждый аргумент:

ПОИСКПОЗ(«СеверПродавец 2»; {«СеверПродавец 1″;»СеверПродавец 2″;»ЮгПродавец 1″;»ЮгПродавец 2»}; 0)

Поскольку « СеверПродавец 2» является вторым элементом в массиве, функция возвращает 2.

Шаг 3.

После этого наша длинная двумерная формула ИНДЕКС ПОИСКПОЗ превращается в такую простую:

=ИНДЕКС(B3:E5; 2; 2)

Шаг 4.

Она возвращает значение на пересечении 2-й строки и 2-го столбца в диапазоне B3:E5, что является значением в ячейке C4.

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

Еще несколько статей по теме:

Понравилась статья? Поделить с друзьями:
  • Excel поиск ячейки по значению в строке
  • Excel поиск текста по двум
  • Excel поиск ячейки по двум условиям
  • Excel поиск текста или
  • Excel поиск ячейки которая содержит