Поиск и подстановка по нескольким условиям
Постановка задачи
Если вы продвинутый пользователь Microsoft Excel, то должны быть знакомы с функцией поиска и подстановки ВПР или VLOOKUP (если еще нет, то сначала почитайте эту статью, чтобы им стать). Для тех, кто понимает, рекламировать ее не нужно — без нее не обходится ни один сложный расчет в Excel. Есть, однако, одна проблема: эта функция умеет искать данные только по совпадению одного параметра. А если у нас их несколько?
Предположим, что у нас есть база данных по ценам товаров за разные месяцы:
Нужно найти и вытащить цену заданного товара (Нектарин) в определенном месяце (Январь), т.е. получить на выходе152, но автоматически, т.е. с помощью формулы. ВПР в чистом виде тут не поможет, но есть несколько других способов решить эту задачу.
Способ 1. Дополнительный столбец с ключом поиска
Это самый очевидный и простой (хотя и не самый удобный) способ. Поскольку штатная функция ВПР (VLOOKUP) умеет искать только по одному столбцу, а не по нескольким, то нам нужно из нескольких сделать один!
Добавим рядом с нашей таблицей еще один столбец, где склеим название товара и месяц в единое целое с помощью оператора сцепки (&), чтобы получить уникальный столбец-ключ для поиска:
Теперь можно использовать знакомую функцию ВПР (VLOOKUP) для поиска склеенной пары НектаринЯнварь из ячеек H3 и J3 в созданном ключевом столбце:
Плюсы: Простой способ, знакомая функция, работает с любыми данными.
Минусы: Надо делать дополнительный столбец и потом, возможно, еще и прятать его от пользователя. При изменении числа строк в таблице — допротягивать формулу сцепки на новые строки (хотя это можно упростить применением умной таблицы).
Способ 2. Функция СУММЕСЛИМН
Если нужно найти именно число (в нашем случае цена как раз число), то вместо ВПР можно использовать функцию СУММЕСЛИМН (SUMIFS), появившуюся начиная с Excel 2007. По идее, эта функция выбирает и суммирует числовые значения по нескольким (до 127!) условиям. Но если в нашем списке нет повторяющихся товаров внутри одного месяца, то она просто выведет значение цены для заданного товара и месяца:
Плюсы: Не нужен дополнительный столбец, решение легко масштабируется на большее количество условий (до 127), быстро считает.
Минусы: Работает только с числовыми данными на выходе, не применима для поиска текста, не работает в старых версиях Excel (2003 и ранее).
Способ 3. Формула массива
О том, как спользовать связку функций ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH) в качестве более мощной альтернативы ВПР я уже подробно описывал (с видео). В нашем же случае, можно применить их для поиска по нескольким столбцам в виде формулы массива. Для этого:
- Выделите пустую зеленую ячейку, где должен быть результат.
- Введите в строке формул в нее следующую формулу:
- Нажмите в конце не Enter, а сочетание Ctrl+Shift+Enter, чтобы ввести формулу не как обычную, а как формулу массива.
Как это на самом деле работает:
Функция ИНДЕКС выдает из диапазона цен C2:C161 содержимое N-ой ячейки по порядку. При этом порядковый номер нужной ячейки нам находит функция ПОИСКПОЗ. Она ищет связку названия товара и месяца (НектаринЯнварь) по очереди во всех ячейках склеенного из двух столбцов диапазона A2:A161&B2:B161 и выдает порядковый номер ячейки, где нашла точное совпадение. По сути, это первый способ, но ключевой столбец создается виртуально прямо внутри формулы, а не в ячейках листа.
Плюсы: Не нужен отдельный столбец, работает и с числами и с текстом.
Минусы: Ощутимо тормозит на больших таблицах (как и все формулы массива, впрочем), особенно если указывать диапазоны «с запасом» или сразу целые столбцы (т.е. вместо A2:A161 вводить A:A и т.д.) Многим непривычны формулы массива в принципе (тогда вам сюда).
Ссылки по теме
- Как искать и подставлять данные с помощью функции ВПР (VLOOKUP)
- Что такое формулы массива и как их использовать
- Как использовать связку функций ИНДЕКС и ПОИСКПОЗ вместо ВПР
- Как извлечь сразу все значения, а не только первое с помощью ВПР
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,
И это дает результат 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,
Ну и далее получаем нужный результат.
ИНДЕКС ПОИСКПОЗ с несколькими условиями в нескольких строках и столбцах
В этом примере показано, как выполнять поиск, проверяя два или более критерия в строках и столбцах. На самом деле это более сложный случай так называемого «матричного поиска» или «двустороннего поиска» с более чем одной строкой заголовка.
Вот общая формула ИНДЕКС ПОИСКПОЗ с несколькими критериями в строках и столбцах:
{=ИНДЕКС( массив_таблицы ; ПОИСКПОЗ( значение_поиска ; столбец_поиска ; 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. Я благодарю вас за чтение и надеюсь вновь увидеть вас в нашем блоге.
Еще несколько статей по теме:
Блог о программе Microsoft Excel: приемы, хитрости, секреты, трюки
Четыре способа использования ВПР с несколькими условиями
Все мы знаем насколько полезной является функция ВПР. Наверное, половина всех действий в Excel выполняется с помощью нее. Однако данная функция обладает рядом ограничений. Например, ВПР просматривает только крайний левый столбец в таблице или ищет только одно условие. Но что, если нам необходимо вернуть значение, соответствующее двум условиям. В таком случае нам придется прибегнуть к некоторым хитростям. Об этих хитростях мы и поговорим в сегодняшней статье.
Итак, мы с вами рассмотрим четыре варианта создания подстановочной функции с двумя условиями:
- Использование дополнительной колонки
- Использование функции ВЫБОР для создания новой таблицы просмотра
- Использование функций ИНДЕКС и ПОИСКПОЗ
- Использование функции СУММПРОИЗВ
Ну а начнем мы с вами с самого простого.
Использование дополнительной колонки
В большинстве случаев сложные проблемы становятся проще и более управляемыми, если их разбить на маленькие кусочки. Тоже самое касается при построении формул в Excel.
Рассмотрим классический пример. У нас имеется таблица с продажами по месяцам и городам. И нам необходимо определить значение продаж, соответствующее двум условиям: месяц – Февраль и город – Самара.
Использование функции ВПР в классическом виде нам не поможет, так как она сможет вернуть значение, соответствующее только одному условию. Из положения нам поможет выйти дополнительный столбец, в котором мы объединим значения столбцов Месяц и Город. Для этого в ячейке А2 прописываем формулу =B2&C2 и протягиваем данную формулу до ячейки А13. Теперь мы сможем использовать значения столбца А, чтобы вернуть необходимое значение. Прописываем в ячейке G3 формулу:
Данная формула объединяет два условия ячеек G1 и G2 в одну строку и просматривает его в столбце А. После того, как нужное условие было обнаружено, формула возвращает значение с четвертого столбца таблицы A1:D13, т.е. столбца Продажи.
Использование функции ВЫБОР для создания новой таблицы просмотра
В случае если по каким-либо причинам использование дополнительного столбца для нас является не вариантом, мы можем использовать формулу массива.
Использование функции ВЫБОР подразумевает создание новой таблицы для просмотра, в котором значения столбцов Месяц и Город уже объединены. Наша формула будет выглядеть следующим образом:
Основной момент данной формулы заключается в части ВЫБОР(<1;2>;B2:B13&C2:C13;D2:D13), который делает две вещи:
- Объединяет значения столбцов Месяц и Город в один массив: ЯнвМосква, ФевМосква …
- Объединяет два массива в таблицу, состоящую из двух столбцов.
Результатом работы данной функции будет таблица, которая выглядит следующим образом:
Теперь формула стала более понятной.
ВАЖНО: Так как мы использовали формулу массива, по окончании ввода формулы нажмите Ctrl+Shift+Enter, чтобы дать знать программе о наших намерениях. После нажатия данной комбинации клавиш, программа автоматически установит фигурные скобки в начале и в конце формулы.
Использование функций ИНДЕКС и ПОИСКПОЗ
Третий способ, который мы с вами рассмотрим, также предполагает использование формулы массива и задействует функции ИНДЕКС и ПОИСКПОЗ.
Формула будет выглядеть следующим образом.
Давайте разберем, что делает каждая часть данной формулы.
Сначала рассмотрим функцию ПОИСКПОЗ(1;(B2:B13=G1)*(C2:C13=G2);0). В данном случае последовательно сравнивается значение ячейки G1 с каждым значением ячеек диапазона B2:B13 и возвращается ИСТИНА, если значения совпадают и ЛОЖЬ, если нет. Такое же сравнение производится со значением ячейки G2 и диапазоном C2:C13. Далее мы сравниваем оба эти массива, состоящих из ИСТИНА и ЛОЖЬ. Комбинация ИСТИНА * ИСТИНА дает нам результат 1 (ИСТИНА). Давайте посмотрим на картинку ниже, которая поможет объяснить принцип работы более наглядно.
Теперь мы можем сказать, где находится строка, удовлетворяющая обоим условиям. Функция ПОИСКПОЗ отыскивает положение 1 в результирующем массиве и возвращает 6, так как единица встречается в шестой строке. Далее функция ИНДЕКС возвращает значение шестой строки диапазона D2:D13.
Использование СУММПРОИЗВ
СУММПРОИЗВ одна из самых мощных формул Excel. У меня даже есть отдельная статья, посвященная данной формуле. Наш четвертый способ использовании нескольких условий заключается в написании формулы с функцией СУММПРОИЗВ. И выглядеть она будет следующим образом:
Принцип работы данной формулы схож с принципом работы предыдущего подхода. Создается виртуальная таблица, в которой сравниваются значения ячеек G1 и G2 с диапазонами B2:B13 и С2:С13 соответственно. Далее оба этих массива сопоставляются и получается массив из единиц и нулей, где единица присваивается той строке, в которой оба условия совпали. Далее данный виртуальный массив перемножается на диапазон D2:D13. Так как в нашем виртуальном массиве будет только одна единица в шестой строке, формула вернёт результат 189.
Данная функция не будет работать, если в диапазоне D2:D13 имеются текстовые значения.
Чтобы понять, как работает данная формула, рекомендую прочитать статью о функции СУММПРОИЗ.
Итак, какой же способ использовать? Хотя все они работают стабильно, я предпочитаю первый способ. В своей ежедневной работе, я предпочитаю работать с файлами, которые просты для понимания и поддаются изменениям. Оба эти требования отвечают условиям первого подхода.
Для более лучшего понимания формул, вы можете скачать рабочую книгу с примерами, разобранными в сегодняшней статье.
Вам также могут быть интересны следующие статьи
10 комментариев
А я пользовался только одной — самой простой.
Автору спасибо за обзор! Очень часто приходится пользоваться в работе этой функцией.
Поиск по нескольким критериям в таблицах Excel
Добрый день уважаемый читатель!
В статье я хочу вам рассказать о возможности произвести поиск по нескольким критериям. Не думаю, что стоит объяснять всю полезность этого варианта поиска, так как возможность найти данные, которые соответствуют нескольким условиям, частенько бывает очень полезно.
Я уже раннее описывал разные варианты поиска, это и возможность поиска с учетом регистра значений, и поиск данных с интервальным просмотром, и улучшенный поиск функцией ВПР, и поиск ВПР по нескольким листам. А теперь добавлю в копилку статей еще одну возможность. Рассмотрим эту возможность на примере продажи овощей, произведя поиск по двум параметрам: менеджер и товар.
Итак, у нас есть условная таблица с ежедневными отчётами о продажах товара, есть менеджер и название товара, а поскольку товар у одного менеджера может быть несколько, то и поиск нам нужен выборочный.
Для этой операции подойдёт формула:
В обязательном порядке формулу необходимо вносить не просто так, а как формулу массива, о чём свидетельствуют фигурные скобки. Произвести это возможно с помощью комбинации горячих клавиш Shift+Ctrl+Enter. Как же собственно работает формула? Рассмотрим поподробнее… Используемый «амперсанд» в функции ПОИСКПОЗ соединяет нужные значения «Нагаев А.В.» и «Апельсин» в одно значение «Нагаев А.В.Апельсин» и производит просмотр массива данных таблицы «B2:B6» и «C2:C6», которые предварительно были условно сцеплены формулой, типа «Нагаев А.В.Банан», «Сидоров А.С.Лимон» и т.д.
Следующим этапом после нахождения функцией ПОИСКПОЗ номера строки с необходимыми условиями, передается функции ИНДЕКС, которая с диапазона «D2:D6» вытянет нужную сумму по указанному адресу номера строки.
Ну, вот результат и готов!
Кроме очевидных плюсов от использования такого варианта поиска есть и минус, это то, что использование массивов в функции придают значительного веса формуле. И как вы можете понять, чем больше массив, тем длительнее будет производиться пересчёт, а также возможно, даже, зависание рабочего файла. В этом случае вам надо проверить работоспособность формулы только экспериментальными методами.
Я очень хочу, чтобы о возможностях произвести поиск по нескольким критериям, вы знали еще больше и могли применить его в своей работе. Если у вас есть чем дополнить меня пишите комментарии, я буду их ждать с нетерпением, ставьте лайки и делитесь полезной статьей в соц.сетях!
Не забудьте подкинуть автору на кофе…
Поиск в excel по двум условиям
Мне надо, чтобы был поиск значения по двум условиям. Пример:
У меня будет таблица, состоящая из Color и Type of wire . Формула, сравнивая эти значения, должна определять Number . Номеров около тысячи, поэтому думаю, как реализовать поиск по этому условию.
Можно сцепить эти колонки и получить уникальное значение и по нему осуществлять поиск. сцепить(COLOR;Type of wire) получаем BKFLY 10.00 QMM уникальное зачение после переместив колонку Number в право от уникального значения осуществляем ВПР(искомое значение то есть BKFLY 10.00 QMM;диапазон поиска;2;0)
Так выглядит формула:
=ВПР(С1;A1:B5;2;0)
Формула массива вводится тремя клавишами: Ctrl+Shift+Enter (формула должна обрамиться фигурными скобками). С помощью функций ЕСЛИ исключаются лишние вычисления.
Если предварительно объединить значения, формула упрощается и не требует «массивного» ввода:
А если сцепку Color&Type переместить левее таблицы (в столбец A, сама таблица сместится на один столбец вправо), можно применить формулу с единственной функцией ВПР:
Функция пользователя (UDF)
Функция размещается в общем модуле. Макросы должны быть разрешены. В ячейку листа:
где F2 и G2 — ячейки выбора прараметров.
Поиск и подстановка по нескольким условиям
Постановка задачи
Если вы продвинутый пользователь Microsoft Excel, то должны быть знакомы с функцией поиска и подстановки ВПР или VLOOKUP (если еще нет, то сначала почитайте эту статью, чтобы им стать). Для тех, кто понимает, рекламировать ее не нужно 🙂 — без нее не обходится ни один сложный расчет в Excel. Есть, однако, одна проблема: эта функция умеет искать данные только по совпадению одного параметра. А если у нас их несколько?
Предположим, что у нас есть база данных по ценам товаров за разные месяцы:
Нужно найти и вытащить цену заданного товара (Нектарин) в определенном месяце (Январь), т.е. получить на выходе152, но автоматически, т.е. с помощью формулы. ВПР в чистом виде тут не поможет, но есть несколько других способов решить эту задачу.
Способ 1. Дополнительный столбец с ключом поиска
Это самый очевидный и простой (хотя и не самый удобный) способ. Поскольку штатная функция ВПР (VLOOKUP) умеет искать только по одному столбцу, а не по нескольким, то нам нужно из нескольких сделать один!
Добавим рядом с нашей таблицей еще один столбец, где склеим название товара и месяц в единое целое с помощью оператора сцепки (&), чтобы получить уникальный столбец-ключ для поиска:
Теперь можно использовать знакомую функцию ВПР (VLOOKUP) для поиска склеенной пары НектаринЯнварь из ячеек H3 и J3 в созданном ключевом столбце:
Плюсы : Простой способ, знакомая функция, работает с любыми данными.
Минусы : Надо делать дополнительный столбец и потом, возможно, еще и прятать его от пользователя. При изменении числа строк в таблице — допротягивать формулу сцепки на новые строки (хотя это можно упростить применением умной таблицы).
Способ 2. Функция СУММЕСЛИМН
Если нужно найти именно число (в нашем случае цена как раз число), то вместо ВПР можно использовать функцию СУММЕСЛИМН (SUMIFS) , появившуюся начиная с Excel 2007. По идее, эта функция выбирает и суммирует числовые значения по нескольким (до 127!) условиям. Но если в нашем списке нет повторяющихся товаров внутри одного месяца, то она просто выведет значение цены для заданного товара и месяца:
Плюсы : Не нужен дополнительный столбец, решение легко масштабируется на большее количество условий (до 127), быстро считает.
Минусы : Работает только с числовыми данными на выходе, не применима для поиска текста, не работает в старых версиях Excel (2003 и ранее).
Способ 3. Формула массива
О том, как спользовать связку функций ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH) в качестве более мощной альтернативы ВПР я уже подробно описывал (с видео). В нашем же случае, можно применить их для поиска по нескольким столбцам в виде формулы массива. Для этого:
- Выделите пустую зеленую ячейку, где должен быть результат.
- Введите в строке формул в нее следующую формулу:
Как это на самом деле работает:
Функция ИНДЕКС выдает из диапазона цен C2:C161 содержимое N-ой ячейки по порядку. При этом порядковый номер нужной ячейки нам находит функция ПОИСКПОЗ. Она ищет связку названия товара и месяца (НектаринЯнварь) по очереди во всех ячейках склеенного из двух столбцов диапазона A2:A161&B2:B161 и выдает порядковый номер ячейки, где нашла точное совпадение. По сути, это первый способ, но ключевой столбец создается виртуально прямо внутри формулы, а не в ячейках листа.
Плюсы : Не нужен отдельный столбец, работает и с числами и с текстом.
Минусы : Ощутимо тормозит на больших таблицах (как и все формулы массива, впрочем), особенно если указывать диапазоны «с запасом» или сразу целые столбцы (т.е. вместо A2:A161 вводить A:A и т.д.) Многим непривычны формулы массива в принципе (тогда вам сюда).
Функция ВПР с несколькими условиями критериев поиска в Excel
Функция ВПР (Вертикальный ПРосмотр) ищет по таблице с данными и на основе критериев запроса поиска, возвращает соответствующее значение с определенного столбца. Очень часто необходимо в запросе поиска использовать сразу несколько условий. Но по умолчанию данная функция не может обработать более одного условия. Поэтому следует использовать весьма простую формулу, которая позволит расширить возможности функции ВПР по нескольким столбцам одновременно.
Работа функции ВПР по нескольким критериям
Для наглядности разберем формулу ВПР с примером нескольких условий. Для примера будем использовать схематический отчет по выручке торговых представителей за квартал:
В данном отчете необходимо найти показатель выручки для определенного торгового представителя в определенную дату. Учитывая условия поиска наш запрос должен содержать 2 условия:
- – Дата сдачи выручки в кассу.
- – Фамилия торгового представителя.
Для решения данной задачи будем использовать функцию ВПР по нескольким условиям и составим следующую формулу:
- В ячейке С1 введите первое значение для первого критерия поискового запроса. Например, дата: 22.03.2017.
- В ячейку C2 введите фамилию торгового представителя (например, Новиков). Это значение будет использоваться в качестве второго аргумента поискового запроса.
- В ячейке C3 мы будем получать результат поиска, для этого там следует ввести формулу:
- После ввода формулы для подтверждения нажмите комбинацию горячих клавиш CTRL+SHIFT+Enter, так как формула должна быть выполнена в массиве.
Результат поиска в таблице по двум условиям:
Найдена сумма выручки конкретного торгового представителя на конкретную дату.
Разбор принципа действия формулы для функции ВПР с несколькими условиями:
Первым аргументом функции =ВПР() является первым условием для поиска значения по таблице отчета выручки торговых представителей. Во втором аргументе находится виртуальная таблица создана в результате массивного вычисления логической функцией =ЕСЛИ(). Каждая фамилия в диапазоне ячеек B6:B12 сравнивается со значением в ячейке C2. Таким образом в памяти создается условный массив данных с элементами значений ИСТИНА и ЛОЖЬ.
Потом благодаря формуле, в памяти программы каждый истинный элемент заменяется на 3-х элементный набор данных:
- элемент – Дата.
- элемент – Фамилия.
- элемент – Выручка.
А каждый ложный элемент в памяти заменяется на 3-х элементный набор пустых текстовых значений («»). В результате создается в памяти программы новая таблица, с которой уже будет работать функция ВПР. Она игнорирует все пустые наборы данных элементов. А непустые элементы сопоставляются со значением ячейки C1, использованного в качестве первого критерия поискового запроса (Дата). Одним словом, таблица в памяти проверена функцией ВПР с одним условием поиска. При положительном результате сопоставления функция возвращает значение элемента из третьего столбца (выручка) условной таблицы. Это происходит потому, что в третьем аргументе указывается номер столбца 3 из которого берутся значения. Стоит отметить что для просмотра в аргументах функции указывается целая таблица (во втором аргументе), но сам поиск всегда идет по первому столбцу в указанной таблицы.
А из какого столбца брать возвращаемое значение указывается уже в третьем аргументе.
Число 0 в последнем аргументе функции указывает на то, то совпадение должно быть абсолютно точным.
Продвинутые примеры с функцией ВПР: поиск по нескольким критериям
Смотрите также также не придумал. Строчные и прописные диапазоны вручную. Как выборки нужных значений на то, то определенного столбца. Очень не знаем точно (числом, текстом илиДля выполнения этой задачи открытой. Если жеКак Вы, вероятно, знаете,.В переводе на человеческий мы вычитаем число3-й основную таблицу (MainВо второй части нашего как использовать в буквы не различаются. заставить формулу работать из списка мы совпадение должно быть часто необходимо в как записана товарная
- логическим значением (ЛОЖЬ используется функция ГПР.
- она закрыта, функция функцияЧтобы добавить цены из
- язык, данная формула3
- товар, заказанный покупателем table), добавив данные
- учебника по функции этом случае ПОИСКПОЗ,
- Диапазон_суммирования без ручного введения
Поиск в Excel по нескольким критериям
недавно разбирали. Если абсолютно точным. запросе поиска использовать позиция относящаяся к или ИСТИНА)) или См. пример ниже. сообщит об ошибкеДВССЫЛ второй таблицы поиска означает:из результата функции,Dan Brown из второй таблицыВПР ИНДЕКС, СУММПРОИЗВ.- это те
Пример 1: Поиск по 2-м разным критериям
диапазонов. СУММЕСЛИМН не вы еще сFinnik сразу несколько условий. яблокам: яблоки или ссылкой на ячейку,Функция ГПР выполняет поиск#REF!используется для того, в основную таблицу,Ищем символы «Mar» – чтобы получить значение: (Lookup table), которая(VLOOKUP) в Excel
Заранее благодарен за ячейки, значения которых обязательное условие, единственное ней не знакомы: Здравствуйте! Но по умолчанию яблоко. содержащую число, текст по столбцу(#ССЫЛ!). чтобы вернуть ссылку, необходимо выполнить действие, аргумент1=VLOOKUP(«Dan Brown3»,$A$2:$C$16,3,FALSE)
находится на другом
мы разберём несколько
помощь! мы хотим сложить, о чем прошу- — загляните сюда,Мой вопрос основан данная функция неВ качестве критерия можно
или логическое значение.ПродажиУрок подготовлен для Вас заданную текстовой строкой, известное как двойнойlookup_valueв ячейке=ВПР(«Dan Brown3»;$A$2:$C$16;3;ЛОЖЬ) листе или в примеров, которые помогутСердЖиГ т.е. нашем случае - только не массивная не пожалейте пяти на конкретном примере может обработать более задать»яблок*» и формулаПросматриваемый_массиви возвращает значение
командой сайта office-guru.ru а это какВПР(искомое_значение);F4На самом деле, Вы другой рабочей книге Вам направить всю: Я часто использую стоимости заказов. формула (файл под минут, чтобы сэкономить из вложения.
одного условия. Поэтому
=ПОИСКПОЗ("яблок*";B53:B62;0) вернет позицию
— непрерывный диапазон
из строки 5 в
Источник: https://www.ablebits.com/office-addins-blog/2014/07/29/vlookup-formula-examples/
раз то, чтоили вложенныйИщем в ячейках от(строка 4, вычитаем можете ввести ссылку Excel, то Вы мощь вот такую формулу:Если условий больше одного 20 МБ). себе потом несколькоСкажите, пожалуйста, реально
Пример 2: ВПР по двум критериям с просматриваемой таблицей на другом листе
следует использовать весьма текстового значения, начинающегося ячеек, возможно, содержащих указанном диапазоне.Перевел: Антон Андронов нам сейчас нужно.ВПР A1 до I1 3), чтобы получить на ячейку в можете собрать искомоеВПР{=СЧЁТ(ЕСЛИ(МАССИВПРОВЕРКИ1&МАССИВПРОВЕРКИ2=КРИТЕРИЙ1&КРИТЕРИЙ2;МАССИВ по которому
(например, нужно найти_Boroda_ часов. ли вставить искомое простую формулу, которая со слова яблок искомые значения.Дополнительные сведения см. вАвтор: Антон Андронов
Итак, смело заменяем. – аргумент
2
качестве искомого значения
значение непосредственно вна решение наиболее считам))}. сумму всех заказов: По какому принципуЕсли же вы знакомы значение из столбца позволит расширить возможности (если она есть
Просматриваемый_массив разделе, посвященном функцииПредположим, что требуется найти в представленной вышеЗапишите функциюlookup_array
в ячейке
вместо текста, как
формуле, которую вставляете амбициозных задач Excel.Но не смог Григорьева для «Копейки»), выбираются ручные диапазоны? с ВПР, то «количество» из листа функции ВПР по в списке).может быть только ГПР. внутренний телефонный номер формуле выражение сВПР
(просматриваемый_массив);F5 представлено на следующем в основную таблицу. Примеры подразумевают, что придумать, как использовать то функцияПочему в строке — вдогон - «Склад», в столбец нескольким столбцам одновременно.Подстановочные знаки следует использовать
одностолбцовым диапазоном ячеек,К началу страницы сотрудника по его функцией, которая находит имяВозвращаем точное совпадение –(строка 5, вычитаем рисунке:Как и в предыдущем Вы уже имеете её в вышеописанномСУММЕСЛИ (SUMIF) 7 ссылка на стоит разобраться с «На складе», находящийся
Извлекаем 2-е, 3-е и т.д. значения, используя ВПР
Для наглядности разберем формулу только для поиска напримерДля выполнения этой задачи идентификационному номеру илиЕСЛИ товара в таблице аргумент 3) и такЕсли Вы ищите только примере, Вам понадобится базовые знания о случае.не поможет, т.к. В7, а в похожими функциями:
на листе «Архангельск»? ВПР с примером позиции текстовых значенийА9:А20 используется функция ГПР. узнать ставку комиссионногона ссылку сLookup table 1match_type далее.
2-е в таблице поиска том, как работаетПомогите, плизз! не умеет проверять строке 8 -ИНДЕКС (INDEX)Я так понимаю, нескольких условий. Для иили диапазоном, расположеннымВажно: вознаграждения, предусмотренную за функцией, используя(тип_сопоставления).SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3))повторение, то можете
(Lookup table) вспомогательный
эта функция. Если
Z больше одного критерия. на А8?и что это должно
- примера будем использоватьТипом сопоставления в одной строке, Значения в первой определенный объем продаж.
ДВССЫЛ
SKU
- ИспользовавНАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3)) сделать это без столбец с объединенными нет, возможно, Вам
: А чего изобретать
Поэтому начиная с
zegorПОИСКПОЗ (MATCH) быть реализовано через схематический отчет по= 0 (третий например, строке должны быть
Необходимые данные можно. Вот такая комбинация, как искомое значение:0Функция вспомогательного столбца, создав
значениями. Этот столбец
будет интересно начать
паровоз — сводная,
- версии Excel 2007: Наверное так будет, владение которыми весьма функцию ВПР. Но выручке торговых представителей
- аргумент функции).А2:Е2 отсортированы по возрастанию. быстро и эффективно
- ВПР=VLOOKUP(A2,New_SKU,2,FALSE)в третьем аргументе,SMALL более сложную формулу:
- должен быть крайним с первой части смотрим. в набор функций
лучше. Каждому блоку облегчит жизнь любому не понимаю, как за квартал:Функция ПОИСКПОЗ() возвращает только. Таким образом формула
В приведенном выше примере находить в спискеи=ВПР(A2;New_SKU;2;ЛОЖЬ) Вы говорите функции(НАИМЕНЬШИЙ) возвращает=IFERROR(VLOOKUP($F$2,INDIRECT(«$B$»&(MATCH($F$2,Table4[Customer Name],0)+2)&»:$C16″),2,FALSE),»») левым в заданном этого учебника, вmazayZR была добавлена функция дано имя. Ищем опытному пользователю Excel. вытащить нужное значениеВ данном отчете необходимо одно значение. Если =ПОИСКПОЗ(«слива»;A30:B33;0) работать не функция ГПР ищет
Извлекаем все повторения искомого значения
и автоматически проверятьДВССЫЛЗдесьПОИСКПОЗn-ое=ЕСЛИОШИБКА(ВПР($F$2;ДВССЫЛ(«$B$»&(ПОИСКПОЗ($F$2;Table4[Customer Name];0)+2)&»:$C16″);2;ИСТИНА);»») для поиска диапазоне. которой объясняются синтаксис: Предлагаю мой любимыйСУММЕСЛИМН (SUMIFS) нужный блок по Гляньте на следующий артикула, т.к. он найти показатель выручки в списке присутствует будет (выдаст ошибку значение 11 000 в строке 3
их правильность. Значения,отлично работает вNew_SKUискать первое значение,наименьшее значение вВ этой формуле:Итак, формула с и основное применение
и единственный вариант
- в ней
условию имя и пример: есть на разных для определенного торгового несколько значений, удовлетворяющих #Н/Д), так как в указанном диапазоне. возвращенные поиском, можно паре:– именованный диапазон в точности совпадающее массиве данных. В$F$2ВПРВПР с ДВССЫЛ
количество условий проверки по дате находимНеобходимо определить регион поставки складах.
Часть 1:
представителя в определенную
критерию, то эта
Просматриваемый_массив Значение 11 000 отсутствует, поэтому затем использовать в=VLOOKUP($D$2,INDIRECT($D3&»_Sales»),2,FALSE)$A:$B с искомым значением. нашем случае, какую– ячейка, содержащаяможет быть такой:. Что ж, давайте:-) увеличено аж до нужное. по артикулу товара,Буду очень благодарен дату. Учитывая условия функция не поможет.
представляет собой диапазон она ищет следующее вычислениях или отображать=ВПР($D$2;ДВССЫЛ($D3&»_Sales»);2;ЛОЖЬ)в таблице
Часть 2:
Это равносильно значению
по счёту позицию
имя покупателя (она=VLOOKUP(B2&» «&C2,Orders!$A&$2:$D$2,4,FALSE) приступим.СердЖиГ 127! Функция находитсяЦитата набранному в ячейку за помощь! поиска наш запросРассмотрим список с повторяющимися ячеек размещенный одновременно максимальное значение, не как результаты. СуществуетГде:Lookup table 1FALSE (от наименьшего) возвращать неизменна, обратите внимание=ВПР(B2&» «&C2;Orders!$A&$2:$D$2;4;ЛОЖЬ)Поиск в Excel по: Спасибо! Буду разбираться.
Часть 3:
в той же
Почему в строке
C16.Michael_S должен содержать 2 значениями в диапазоне в нескольких столбцах превышающее 11 000, и возвращает несколько способов поиска$D$2, а(ЛОЖЬ) для четвёртого – определено функцией – ссылка абсолютная);Здесь в столбцах B нескольким критериямZ, а слона категории 7 ссылка наЗадача решается при помощи: так? условия:B66:B72 и нескольких ячейках. 10 543. значений в списке– это ячейка2 аргументаROW$B$ и C содержатся
Часть 4:
Извлекаем 2-е, 3-е и
то я и
Математические В7, а в двух функций:200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММЕСЛИМН(Склад!$D$3:$D$14;Склад!$A$3:$A$14;Архангельск!B7;Склад!$C$3:$C$14;Архангельск!$A$3)– Дата сдачи выручки. Найдем все позицииТип_сопоставленияДополнительные сведения см. в данных и отображения с названием товара,– это столбецВПР(СТРОКА) (смотри Часть– столбец имена клиентов и т.д. значения, используя не заметил, прои работает похожим строке 8 -
Часть 5:
=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)
Serge_007
в кассу. значения Груши.— число -1, разделе, посвященном функции результатов. она неизменна благодаря B, который содержит. 2). Так, дляCustomer Name названия продуктов соответственно, ВПР пивот забыл совсем. образом, но имеет
Двумерный поиск по известным строке и столбцу
на А8?Функция:– Фамилия торгового представителя.Значение Груши находятся в 0 или 1. ГПР.Поиск значений в списке абсолютной ссылке.
названия товаров (смотритеВот так Вы можете ячейки; а ссылкаИзвлекаем все повторения искомого Ща покручу поверчу, больше аргументов:
Здесь выбираем имяПОИСКПОЗ200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММПРОИЗВ((A7=Склад!$B$3:$B$14)*($A$3=Склад!$C$3:$C$14)*Склад!$D$3:$D$14)Для решения данной задачи позициях 2 и
Функции ВПР и ПОИСКПОЗ
Тип_сопоставленияК началу страницы по вертикали по$D3 на рисунке выше) создать формулу дляF4Table4Orders!$A&$2:$D$2 значения но хотелось быПри помощи полосы прокрутки
отличное от названия
ищет в столбце
Кстати, ответ на будем использовать функцию 5 списка. Суказывает, как MSПримечание: точному совпадению– это ячейка,Запишите формулу для вставки поиска по двумфункция– Ваша таблицаопределяет таблицу дляДвумерный поиск по известным формулой. в правой части блока.D1:D13 Ваш вопрос есть ВПР по нескольким помощью формулы массива EXCEL сопоставляет
Поддержка надстройки "Мастер подстановок"
Поиск значений в списке
содержащая первую часть цен из таблицы критериям в Excel,
- НАИМЕНЬШИЙ({массив};1) (на этом месте поиска на другом строке и столбцу
- mazayZR, формула жесть окна можно задатьПоправил. Извиняюсь зазначение артикула из и здесь.
- условиям и составим=(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65))искомое_значение в Excel 2010
по вертикали по названия региона. ВLookup table 2 что также известно,возвращает также может быть листе.Используем несколько ВПР в Ща буду и третью пару сумбур в объяснениях. ячейкиFinnik следующую формулу:
можно найти все этисо значениями в прекращена. Эта надстройка приблизительному совпадению нашем примере этона основе известных как двумерный поиск1-й
Функция СУММПРОИЗВ
обычный диапазон);Чтобы сделать формулу более одной формуле понимать
(
_Boroda_
Функции ИНДЕКС и ПОИСКПОЗ
C16: Спасибо большое заВ ячейке С1 введите позиции. Для этого аргументе была заменена мастером
Поиск значений по вертикали
FL
Именованные диапазоны и оператор пересечения
названий товаров. Для или поиск в(наименьший) элемент массива,$C16 читаемой, Вы можетеДинамическая подстановка данных изСердЖиГ
- Диапазон_условия3: Так нужно?. Последний аргумент функции помощь! первое значение для
- необходимо выделить несколькопросматриваемый_массив. функций и функциями в списке неизвестного. этого вставьте созданную двух направлениях. то есть– конечная ячейка задать имя для разных таблиц: Z, спасибо за-=СУММЕСЛИМН(ИНДЕКС($D$2:$AT$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ИНДЕКС($A$2:$AQ$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ЕСЛИ(A$1=A8;»*»;A8);ИНДЕКС($B$2:$AR$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));ЕСЛИ(A$1=B8;»*»;B8);ИНДЕКС($C$2:$AS$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A8;B8;A8);$A$1:$AQ$1;));C8) 0 — означает
- Скажите, а если первого критерия поискового ячеек (расположенных вертикально),Если
для работы со
размера по точному
_Sales ранее формулу вФункция1 Вашей таблицы или просматриваемого диапазона, иФункция
подсказку, решил, чтоУсловие3zegor поиск точного (а у меня большой запроса. Например, дата:
- в Строке формултип_сопоставления ссылками и массивами.
совпадению– общая часть качестве искомого значенияСУММПРОИЗВ. Для ячейки диапазона.
Используем несколько ВПР в одной формуле
тогда формула станетВПР использование сводной будет), и четвертую, и: Да, благодарю. не приблизительного) соответствия. массив данный - 22.03.2017. ввести вышеуказанную формулуравен 0, тоВ Excel 2007 мастерПоиск значений в списке названия всех именованных для новой функции(SUMPRODUCT) возвращает сумму
F5Эта формула находит только выглядеть гораздо проще:в Excel – оптимальным вариантом. т.д. — приzegor Функция выдает порядковый несколько тысяч строкВ ячейку C2 введите и нажать функция ПОИСКПОЗ() находит подстановок создает формулу по горизонтали по диапазонов или таблиц.ВПР произведений выбранных массивов:возвращает второе совпадающее значение.=VLOOKUP(B2&» «&C2,Orders,4,FALSE) это действительно мощныйZ
необходимости.: Добрый день. Напишу номер найденного значения (артикулы по филиалам), фамилию торгового представителяCTRL+SHIFT+ENTER первое значение, которое подстановки, основанную на точному совпадению
- Соединенная со значением:=SUMPRODUCT(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»),$A$2:$I$9)2-й Если же Вам=ВПР(B2&» «&C2;Orders;4;ЛОЖЬ) инструмент для выполнения: Всегда пожалуйста. Меня
Если же у вас
здесь, возникла проблема
в диапазоне, т.е. какой способ наиболее (например, Новиков). Это. В позициях, в в данных листа, содержащихПоиск значений в списке в ячейке D3,=VLOOKUP(VLOOKUP(A2,New_SKU,2,FALSE),Price,3,FALSE)=СУММПРОИЗВ(($A$2:$A$9=»Lemons»)*($A$1:$I$1=»Mar»);$A$2:$I$9)наименьший элемент массива, необходимо извлечь остальные
- Чтобы формула работала, значения поиска определённого значения лень заставляет искать пока еще старая с предложенным решением фактически номер строки, эффективен? значение будет использоваться которых есть значениеточности названия строк и
по горизонтали по
она образует полное
=ВПР(ВПР(A2;New_SKU;2;ЛОЖЬ);Price;3;ЛОЖЬ)В следующей статье я то есть повторения, воспользуйтесь предыдущим в крайнем левом в базе данных. то, что проще, версия Excel 2003,_Boroda_ где найден требуемыый
В предложенных примерах в качестве второго Груши будет выведено
Динамическая подстановка данных из разных таблиц при помощи ВПР и ДВССЫЛ
равно аргументу столбцов. С помощью приблизительному совпадению имя требуемого диапазона.Здесь буду объяснять эти3
решением. столбце просматриваемой таблицы Однако, есть существенное сподручнее и привычнее. но задачу с. В прикрепленном файле артикул. Вы фиксируете диапазоны. аргумента поискового запроса. соответствующее значение позиции,искомое_значениеПросматриваемый_массив
мастера подстановок можноСоздание формулы подстановки с Ниже приведены некоторыеPrice функции во всех, и так далее.Если Вам нужен список должны быть объединены
ограничение – еёSIA несколькими условиями решить в «Е8» неправильноФункция А если неВ ячейке C3 мы в остальных ячейкахможет быть не найти остальные значения помощью мастера подстановок
подробности для тех,
– именованный диапазон
деталях, так что
- INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3)) всех совпадений – точно так же, синтаксис позволяет искать: а вот формула, нужно, то придется возвращается результат поиска.ИНДЕКС фиксировать, это не
- будем получать результат быдет выведен 0. упорядочен. в строке, если (только Excel 2007) кто не имеет$A:$C сейчас можете простоИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3)) функция
- как и в только одно значение. вставьте в B3 извращаться — см. Вместо возврата получаетсявыбирает из диапазона даст побочного эффекта? поиска, для этогоC помощью другой формулыЕсли тип_сопоставления равен 1, известно значение вДля решения этой задачи опыта работы св таблице скопировать эту формулу:Функция
ВПР критерии поиска. На Как же быть, и протяните куда следующие способы. сумма данных сA1:G13И еще вопрос. там следует ввести массива
то функция ПОИСКПОЗ() одном столбце, и можно использовать функцию функциейLookup table 2=INDEX($A$2:$I$9,MATCH(«Lemons»,$A$2:$A$9,0),MATCH(«Mar»,$A$1:$I$1,0))INDEXтут не помощник, рисунке выше мы если требуется выполнить надоДобавим к нашей таблице одинаковой датой. Этозначение, находящееся на Как суммировать все формулу:=НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65)) находит наибольшее значение, наоборот. В формулах, ВПР или сочетаниеДВССЫЛ, а=ИНДЕКС($A$2:$I$9;ПОИСКПОЗ(«Lemons»;$A$2:$A$9;0);ПОИСКПОЗ(«Mar»;$A$1:$I$1;0))
(ИНДЕКС) просто возвращает
поскольку она возвращает
объединили значения и
- поиск по нескольким=СУММПРОИЗВ(($A3=$A$16:$A$30)*(B$2=$B$16:$B$30)*$C$16:$C$30) еще один столбец, бывает только в пересечении заданной строки
- количества по конкретному,После ввода формулы дляможно отсортировать найденные позиции, которое меньше либо которые создает мастер функций ИНДЕКС и.
- 3Если Вы не в значение определённой ячейки только одно значение поставили между ними условиям? Решение Вытема была раскрыта который будет служить случае когда имя (номер строки с находящиеся на разных подтверждения нажмите комбинацию чтобы номера найденных равно, чем подстановок, используются функции
Как работают ДВССЫЛ и ВПР
ПОИСКПОЗ.Во-первых, позвольте напомнить синтаксис– это столбец восторге от всех
в массиве
за раз –
пробел, точно так найдёте далее. в разделе «приемы» своеобразным индикатором: если (как в случае артикулом выдает функция складах (без привязки горячих клавиш CTRL+SHIFT+Enter, позиций отображались в
- искомое_значениеПросматриваемый_массив ИНДЕКС и ПОИСКПОЗ.Дополнительные сведения см. в функции C, содержащий цены.
- этих сложных формулC2:C16 и точка. Но же необходимо сделатьПредположим, у нас есть
вроде. заказ был в с Benjamin) встречаетсяПОИСКПОЗ к региону)? так как формула первых ячейках (см.
должен быть упорядоченЩелкните ячейку в диапазоне. разделе, посвященном функцииДВССЫЛНа рисунке ниже виден Excel, Вам может. Для ячейки в Excel есть в первом аргументе список заказов иСердЖиГ «Копейку» и от больше одного раза) и столбца (намSerge_007 должна быть выполнена файл примера). по возрастанию: …,На вкладке ВПР.(INDIRECT): результат, возвращаемый созданной понравиться вот такой
F4 функция функции (B2&» «&C2). мы хотим найти: Гениально :-) Григорьева, то в за день (дата). нужен регион, т.е.: Сводная таблица. в массиве.1. Произведем поиск позиции -2, -1, 0,ФормулыЧто означает:INDIRECT(ref_text,[a1]) нами формулой: наглядный и запоминающийсяфункция
INDEXЗапомните!Количество товараЯ эту тему ячейке этого столбца
Но есть нюанс- второй столбец).QuoteРезультат поиска в таблице в НЕ сортированном
1, 2, ...,
в группе
=ИНДЕКС(нужно вернуть значение изДВССЫЛ(ссылка_на_текст;[a1])В начале разъясним, что способ:ИНДЕКС($C$2:$C$16;1)(ИНДЕКС), которая сФункция(Qty.), основываясь на читал, но у будет значение 1,
если дата однаПАМ
(Finnik)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Вы фиксируете диапазоны.
по двум условиям:
списке числовых значений
office-guru.ru
Поиск значений в списке данных
A-Z, ЛОЖЬ, ИСТИНА.Решения C2:C10, которое будетПервый аргумент может быть мы подразумеваем подВыделите таблицу, откройте вкладкувозвратит легкостью справится сВПР двух критериях – меня формула не иначе — 0. а имя справа: Здравствуйте уважаемые форумчане! А если неНайдена сумма выручки конкретного (диапазон Есливыберите команду соответствовать ПОИСКПОЗ(первое значение
В этой статье
ссылкой на ячейку выражением «Динамическая подстановкаFormulas
Apples этой задачей. Какограничена 255 символами,
Имя клиента стала работать. А Формула, которую надо и слева (как
Подскажите мне пожалуйста, фиксировать, это не торгового представителя на
B8:B14тип_сопоставленияПодстановка
«Капуста» в массиве (стиль A1 или данных из разных
Поиск значений в списке по вертикали по точному совпадению
(Формулы) и нажмите, для будет выглядеть такая она не может(Customer) и
Примеры функции ВПР
разница была лишь ввести в этот ориентир) то порядок,
Примеры функций ИНДЕКС и ПОИСКПОЗ
как решить проблему:
даст побочного эффекта? конкретную дату.)опущен, то предполагается,.
B2:B10)) R1C1), именем диапазона таблиц», чтобы убедитьсяCreate from SelectionF5 формула, Вы узнаете искать значение, состоящееНазвание продукта в этом:
столбец очень простая: когда только справаНа листе 1
Если формула находится
Поиск значений в списке по вертикали по приблизительному совпадению
Столбец Позиция приведен для
что он равенЕсли командаФормула ищет в C2:C10 или текстовой строкой.
правильно ли мы(Создать из выделенного).функция в следующем примере. из более чем(Product). Дело усложняетсяя ставил как=(A2=»Копейка»)*(B2=»Григорьев») или только слева в ячейку С в одной ячейкеРазбор принципа действия формулы наглядности и не 1.Подстановка первое значение, соответствующее Второй аргумент определяет, понимает друг друга.
Отметьте галочкамиИНДЕКС($C$2:$C$16;3)Как упоминалось выше,
255 символов. Имейте
Поиск значений по вертикали в списке неизвестного размера по точному совпадению
тем, что каждый в теме былоЛогические равенства в скобках
вот тут и необходимо найти значения — можно не для функции ВПР влияет на вычисления.Еслинедоступна, необходимо загрузить значению какого стиля ссылкаБывают ситуации, когда естьTop rowвозвратит
ВПР это ввиду и из покупателей заказывал написано: $A$16:$A$30=$A3
дают значения ИСТИНА получается сумма. Помогите из ячейки С фиксировать. с несколькими условиями:Найдем позицию значения 30тип_сопоставления
надстройка мастера подстановок.Капуста содержится в первом несколько листов с(в строке выше)Sweetsне может извлечь следите, чтобы длина несколько видов товаров,а Ваша формула или ЛОЖЬ, что пожалуйста избавиться от
по критериям столбцов
Поиск значений в списке по горизонтали по точному совпадению
Если Вы будетеПервым аргументом функции =ВПР() с помощью формулы
равен -1, тоЗагрузка надстройки мастера подстановок(B7), и возвращает аргументе: данными одного формата, и
и так далее. все повторяющиеся значения искомого значения не
как это видно
Поиск значений в списке по горизонтали по приблизительному совпадению
работает потому, что для Excel равносильно
такой «ошибки», единственное А и В. её копировать - является первым условием
=ПОИСКПОЗ(30;B8:B14;0) функция ПОИСКПОЗ() находитНажмите кнопку значение в ячейкеA1 и необходимо извлечьLeft columnIFERROR() из просматриваемого диапазона.
превышала этот лимит. из таблицы ниже: Вы поставили наоборот
1 и 0.
Создание формулы подстановки с помощью мастера подстановок (только Excel 2007)
что нужно это Проблема в том, фиксировать обязательно. для поиска значенияФормула ищет наименьшее значение, котороеMicrosoft Office C7 (
, если аргумент равен нужную информацию с(в столбце слева).ЕСЛИОШИБКА() Чтобы сделать это,Соглашусь, добавление вспомогательного столбцаОбычная функция$A3=$A$16:$A$30 Таким образом, поскольку возвращать данные не что в ячейкеQuote по таблице отчетаточное больше либо равно
-
, а затем —
-
100TRUE определенного листа в Microsoft Excel назначитВ завершение, мы помещаем Вам потребуется чуть – не самое
-
ВПРИнтересно почему (хотя мы перемножаем эти суммируя их.
С Листа 2
-
(Finnik)200?’200px’:»+(this.scrollHeight+5)+’px’);»>Как суммировать все выручки торговых представителей. значение 30. Если чем кнопку).(ИСТИНА) или не зависимости от значения,
-
имена диапазонам из формулу внутрь функции более сложная формула, изящное и нене будет работать я догадываюсь) выражения, единица в
-
_Boroda_ есть и даты, количества по конкретномуПо Во втором аргументе в списке егоискомое_значениеПросматриваемый_массивПараметры ExcelДополнительные сведения см. в
-
указан;
которое введено в
support.office.com
Функция ПОИСКПОЗ() в MS EXCEL
значений в верхнейIFERROR составленная из нескольких всегда приемлемое решение. по такому сценарию,Niky конечном счете получится: Так? и просто текстовые конкретному чему? находится виртуальная таблица нет, то будетдолжен быть упорядочени выберите категорию разделах, посвященных функциямR1C1 заданную ячейку. Думаю, строке и левом(ЕСЛИОШИБКА), поскольку вряд функций Excel, таких Вы можете сделать поскольку она возвратит: Очень не хочется только если оба
=СУММЕСЛИМН(ИНДЕКС($D$2:$AT$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));ИНДЕКС($A$2:$AQ$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));A2;ИНДЕКС($B$2:$AR$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));B2;ИНДЕКС($C$2:$AS$51;;ПОИСКПОЗ(ЕСЛИ(A$1=A2;B2;A2);$A$1:$AQ$1;));C2) значения, наверно поэтомуДавайте пример. создана в результате возвращена ошибка #Н/Д. по убыванию: ИСТИНА,Надстройки ИНДЕКС и ПОИСКПОЗ., если проще это объяснить столбце Вашей таблицы. ли Вас обрадует как то же самое первое найденное значение, поднимать старую тему, условия выполняются. Теперьzegor
Синтаксис функции
у меня иГость
массивного вычисления логической2. Произведем поиск позиции ЛОЖЬ, Z-A, …,.К началу страницыF на примере. Теперь Вы можете сообщение об ошибкеINDEX без вспомогательного столбца, соответствующее заданному искомому
но я перечитал стоимости продаж осталось: Спасибо ещё раз. не получается через: =СУММЕСЛИ() функцией =ЕСЛИ(). Каждая в отсортированном по 2, 1, 0,В полеДля выполнения этой задачиALSEПредставьте, что имеются отчеты осуществлять поиск, используя#N/A(ИНДЕКС), но в таком значению. Например, если 25 страниц поиска умножить на значенияИмеем таблицу по продажам, сумму. Или простоFinnik
фамилия в диапазоне возрастанию списке числовых -1, -2, …,Управление используется функция ВПР.(ЛОЖЬ). по продажам для эти имена, напрямую,(#Н/Д) в случае,SMALL
- случае потребуется гораздо Вы хотите узнать по этой проблеме, получившегося столбца и например, следующего вида: что-то необходимо добавить,: Я извиняюсь! Вопрос ячеек B6:B12 сравнивается значений (диапазон и так далее.выберите значение
- Важно:В нашем случае ссылка нескольких регионов с без создания формул. если количество ячеек,(НАИМЕНЬШИЙ) и более сложная формула количество товара поймите правильно - просуммировать отобранное вЗадача но я не отпал — решил)) со значением вB31:B37Функция ПОИСКПОЗ() не различает
- Надстройки Excel Значения в первой имеет стиль одинаковыми товарами иВ любой пустой ячейке в которые скопированаROW с комбинацией функцийSweets очень нужно разобраться. зеленой ячейке:: просуммировать все заказы, знаю что и Excel — вещь!!!
ячейке C2. Таким) РеГИстры при сопоставлении
и нажмите кнопку строке должны бытьA1 в одинаковом формате.
Поиск позиции в массивах с текстовыми значениями
запишите формула, будет меньше,(СТРОКА)INDEX, заказанное покупателем
Z, как работаетЕсли вы раньше не которые менеджер Григорьев реализовал
именно. Поясните пожалуйстаТолько вот еще
образом в памятиСортированные списки позволяют искать текстов.Перейти отсортированы по возрастанию., поэтому можно не
Требуется найти показатели=имя_строки имя_столбца чем количество повторяющихсяНапример, формула, представленная ниже,(ИНДЕКС) и
Jeremy Hill формула СУММПРОИЗВ в сталкивались с такой для магазина «Копейка». что. Если такое один вопрос (см. создается условный массив не только точныеЕсли функция ПОИСКПОЗ() не.
В приведенном выше примере указывать второй аргумент продаж для определенного, например, так:
Поиск позиции в массиве констант
значений в просматриваемом находит все повторенияMATCH, запишите вот такую данном случае? Из замечательной возможностью ExcelЕсли бы в нашей
Поиск позиции с использованием подстановочных знаков
сделать невозможно без пример). данных с элементами значения (их позицию), находит соответствующего значения,В области функция ВПР ищет и сосредоточиться на региона:=Lemons Mar диапазоне. значения из ячейки(ПОИСКПОЗ).
формулу: всех возможных вариантов как формулы массива, задаче было только макроса, можно сделатьЕсть артикулы (лист значений ИСТИНА и
но и позицию то возвращается значениеДоступные надстройки имя первого учащегося первом.Если у Вас всего… или наоборот:
Выполнение двумерного поиска в F2 в диапазонеВы уже знаете, что=VLOOKUP(B1,$A$5:$C$14,3,FALSE) я никогда бы то советую почитать одно условие (все
Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
если значение текстовое Склад), отмеченные желтым. ЛОЖЬ. ближайшего значения. Например, ошибки #Н/Д.установите флажок рядом
с 6 пропусками вИтак, давайте вернемся к два таких отчета,=Mar Lemons Excel подразумевает поиск
B2:B16 и возвращаетВПР=ВПР(B1;$A$5:$C$14;3;ЛОЖЬ) не подумал именно
предварительно про них
заказы Петрова или то пустую ячейку. Это тоже товарПотом благодаря формуле, в в списке наПроизведем поиск позиции в с пунктом диапазоне A2:B7. Учащихся нашим отчетам по то можно использоватьПомните, что имена строки значения по известному результат из техможет возвратить только
– эта формула вернет на эту…
много хорошего здесь.
все заказы вЗаранее премного благодарен. (артикул — 100-0A2), памяти программы каждый картинке ниже нет
Поиск позиции в массивах с Числами
НЕ сортированном спискеМастер подстановок с продажам. Если Вы до безобразия простую и столбца нужно
номеру строки и же строк в одно совпадающее значение,
результатATOM Ну, а в
«Копейку», например), тоPelena который в наличии, истинный элемент заменяется значения 45, но текстовых значений (диапазон
и нажмите кнопку6 помните, то каждый формулу с функциями разделить пробелом, который столбца. Другими словами,
столбце C. точнее – первое15: Вариант с суммпроизведений нашем случае задача задача решалась бы: Здравствуйте но имеет дополнительную на 3-х элементный можно найти позициюB7:B13ОК пропусками в таблице нет, отчёт – это
ВПР в данном случае
Вы извлекаете значение{=IFERROR(INDEX($C$2:$C$16,SMALL(IF($F$2=B2:B16,ROW(C2:C16)-1,»»),ROW()-3)),»»)} найденное. Но как
, соответствующий товару=суммпроизв((МАССИВ1=Критерий1)*(МАССИВ2=Критерий2)*(МАССИВн=КритерийН)) — подсчитывает решается одной формулой: достаточно легко при=ПРОСМОТР(;-1/(Лист2!$A$2:$A$6=A2)/(Лист2!$B$2:$B$6=B2);Лист2!$C$2:$C$6) аналитику, например: набор данных: наибольшего значения, которое).
Функции ПОИСКПОЗ() и ИНДЕКС()
поэтому функция ВПР отдельная таблица, расположеннаяи работает как оператор ячейки на пересечении{=ЕСЛИОШИБКА(ИНДЕКС($C$2:$C$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»);СТРОКА()-3));»»)} быть, если вApples
число записей удовлетовряющих=СУММ((A2:A26=»Копейка»)*(B2:B26=»Григорьев»)*D2:D26) помощи встроенной функцииили формула массива
Санкт-Петербург-Архангельск — товар
элемент – Дата. меньше либо равно,Столбец Позиция приведен дляСледуйте инструкциям мастера.
ищет первую запись на отдельном листе.ЕСЛИ пересечения.
конкретной строки иВведите эту формулу массива просматриваемом массиве это, так как это условиямПосле ввода этой формулы
excel2.ru
Функция ВПР с несколькими условиями критериев поиска в Excel
ExcelКод=ИНДЕКС(Лист2!$C$2:$C$6; ПОИСКПОЗ(A2&B2;Лист2!$A$2:$A$6&Лист2!$B$2:$B$6;0)) переезжает на складэлемент – Фамилия. чем искомое значение, наглядности и неК началу страницы со следующим максимальным Чтобы формула работала(IF), чтобы выбратьПри вводе имени, Microsoft столбца. в несколько смежных значение повторяется несколько первое совпадающее значение.=суммпроизв((МАССИВ1=Критерий1)*(МАССИВ2=Критерий2)*(МАССИВн=КритерийН)*(ДИАПОЗОН_СУММИРОВАНИЯ)) — просуммирует необходимо нажать неСУММЕСЛИ (SUMIF)китин
Работа функции ВПР по нескольким критериям
в Архангельске.элемент – Выручка. т.е. позицию значения влияет на вычисления.Функция ПОИСКПОЗ(), английский вариант значением, не превышающим верно, Вы должны
нужный отчет для Excel будет показыватьИтак, давайте обратимся к ячеек, например, в раз, и ВыЕсть простой обходной путь записи в диапозоне, Enter, как обычно,
- из категории: Доброго утречка!!!
- Брак-Санкт-Петербург — бракованный
А каждый ложный элемент 40.Формула для поиска позиции MATCH(), возвращает позицию 6. Она находит
- дать названия своим поиска: подсказку со списком нашей таблице и ячейки
- хотите извлечь 2-е – создать дополнительный удовлетворяющие критериям аМатематические (Math&Trig)формула массива
- товар в СПб в памяти заменяетсяЭто можно сделать с значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0) значения в диапазоне
- значение 5 и возвращает таблицам (или диапазонам),=VLOOKUP($D$2,IF($D3=»FL»,FL_Sales,CA_Sales),2,FALSE) подходящих имен, так запишем формулу сF4:F8
или 3-е из столбец, в котором
NikyCtrl + Shift +. Выделяем пустую ячейку
=ИНДЕКС(Лист2!$C$2:$C$6;ПОИСКПОЗ(Лист1!$A2&Лист1!$B2;Лист2!$A$2:$A$6&Лист2!$B$2:$B$6;0))
Пермь-Москва — товар на 3-х элементный помощью формулы =ПОИСКПОЗ(45;B31:B37;1)
Формула находит первое значение ячеек. Например, если связанное с ним причем все названия=ВПР($D$2;ЕСЛИ($D3=»FL»;FL_Sales;CA_Sales);2;ЛОЖЬ) же, как при функцией, как показано на них? А что объединить все нужные: Огромный недостаток: эта Enter для результата, жмемПАМ переезжает на склад набор пустых текстовыхОбратите внимание, что тип сверху и выводит в ячейке
имя должны иметь общуюГде: вводе формулы.ВПР
- рисунке ниже. Количество
- если все значения?
- критерии. В нашем
фунция не возвращает- тогда Excel кнопку: в Москву. значений («»). В сопоставления =1 (третий его позицию вА10Алексей часть. Например, так:$D$2Нажмите, которая найдет информацию ячеек должно быть Задачка кажется замысловатой, примере это столбцы текстовые значения, только воспримет ее какfxPelenaМосква-Архангельск — товар результате создается в аргумент функции). диапазоне, второе значениесодержится значение «яблоки»,.CA_Sales– это ячейка,Enter о стоимости проданных равным или большим, но решение существует!Имя клиента числовые… :( формулу массива ив строке формул,, переезжает на склад памяти программы новая
3. Поиск позиции в Груши учтено не то формула =ПОИСКПОЗ
Дополнительные сведения см. в, содержащая название товара.и проверьте результат
в марте лимонов. чем максимально возможноеПредположим, в одном столбце(Customer) иСейчас думаю как
exceltable.com
Поиск значения по двум критериям. Это реально?
сам добавит фигурные находим функцию
китин в Архангельске. таблица, с которой
списке отсортированном по будет. («яблоки»;A9:A20;0) вернет 2, разделе, посвященном функцииFL_Sales Обратите внимание, здесьВ целом, какой бы
Существует несколько способов выполнить число повторений искомого таблицы записаны именаНазвание продукта обойти… скобки. Вводить скобкиСУММЕСЛИ, Огромное спасибо заМожно ли, на
уже будет работать убыванию выполняется аналогично,
Чтобы найти номер строки, т.е. искомое значение ВПР.
, мы используем абсолютные из представленных выше
двумерный поиск. Познакомьтесь значения. Не забудьте клиентов (Customer Name),
(Product). Не забывайте,mazayZR с клавиатуры не
в списке: оперативность, почти все ваш взгляд, увязать функция ВПР. Она но с типом а не позиции «яблоки» содержится во
К началу страницыTX_Sales ссылки, чтобы избежать методов Вы ни с возможными вариантами
нажать а в другом что объединенный столбец: для текстовых моя надо. Легко сообразить,Жмем
подходит. эти данные с
игнорирует все пустые сопоставления = -1. в искомом диапазоне, второй ячейке диапазонаДля выполнения этой задачии так далее. изменения искомого значения выбрали, результат двумерного и выберите наиболее
Ctrl+Shift+Enter – товары (Product), должен быть всегда
подойдет что этот способОК_Boroda_
фактически находящимся товаром
наборы данных элементов. В этом случае
можно записать следующуюA9:A20А9 используются функции СМЕЩ Как видите, во
при копировании формулы поиска будет одним подходящий.
, чтобы правильно ввести которые они купили. крайним левым вvikttur (как и предыдущий) и вводим ее аргументы:: Почти как у
на складах? А непустые элементы функция ПОИСКПОЗ() находит
формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)- первая ячейка
и ПОИСКПОЗ. всех именах присутствует в другие ячейки.
и тем же:Вы можете использовать связку формулу массива.
Попробуем найти 2-й, диапазоне поиска, поскольку: Для разнообразия - легко масштабируется наДиапазон
Лены, но неSerge_007 сопоставляются со значением наименьшее значение, которое
Если искомое значение не (предполагается, что вПримечание: «_Sales».$D3Бывает так, что основная
из функцийЕсли Вам интересно понять,
3-й и 4-й именно левый столбец формула «не массива» три, четыре и- это те совсем
: Всё можно. Нарисуйте ячейки C1, использованного больше либо равно обнаружено в списке, ней не содержится Данный метод целесообразно использовать
Функция– это ячейка таблица и таблицаВПР как она работает,
товары, купленные заданным функция (для удобства рассмотрения т.д. условий без
excelworld.ru
Поиск нужных данных в диапазоне
ячейки, которые мы=ПРОСМОТР(;-1/(A2&B2=Лист2!A$2:A$6&Лист2!B$2:B$6);Лист2!C$2:C$6) как по-вашему будет в качестве первого чем искомое значение. то будет возвращено значение «яблоки»), при поиске данныхДВССЫЛ с названием региона. поиска не имеют(VLOOKUP) и давайте немного погрузимся
клиентом.ВПР — без проверки каких-либо ограничений. проверяем на выполнениеА что значит выглядеть результат. критерия поискового запросаФункции ПОИСКПОЗ() и ИНДЕКС() значение ошибки #Н/Д.А10 в ежедневно обновляемомсоединяет значение в
Используем абсолютную ссылку ни одного общегоПОИСКПОЗ в детали формулы:
Простейший способ – добавитьпросматривает при поиске
на #Н/Д):
В категорииКритерия? «Почти» -ЗЫ И прикладывайте (Дата). Одним словом, часто используются вместе, Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0)- вторая, внешнем диапазоне данных. столбце D и для столбца и столбца, и это(MATCH), чтобы найтиIF($F$2=B2:B16,ROW(C2:C16)-1,»») вспомогательный столбец перед значения.=ВПР($A3;СМЕЩ($A$15;ПОИСКПОЗ(B$2;$B$16:$B$30;0);0;СЧЁТЕСЛИ($B$16:$B$30;B$2);3);3;ЛОЖЬ)
Базы данных (Database). В нашем случае это как? файлы таблица в памяти т.к. позволяют по вернет ошибку, т.к.А11 Известна цена в текстовую строку «_Sales», относительную ссылку для мешает использовать обычную
planetaexcel.ru
Поиск разных значений по двум критериям (Формулы/Formulas)
значение на пересеченииЕСЛИ($F$2=B2:B16;СТРОКА(C2:C16)-1;»»)
столбцомИтак, Вы добавляете вспомогательный
Alexstt можно найти функцию — это диапазонПАМxls проверена функцией ВПР найденной позиции в значения «грейпфрут» в- третья и столбце B, но тем самым сообщая строки, поскольку планируем функцию полей$F$2=B2:B16Customer Name столбец в таблицу: замечательный вариант безБДСУММ (DSUM) с фамилиями менеджеров: _Boroda_, Александр здравствуйте., а не с одним условием одном диапазоне вывести
диапазоне ячеек
т.д. (подсчет позиции неизвестно, сколько строк
ВПР
копировать формулу в
ВПР
Название продукта– сравниваем значение
и заполнить его
и копируете по
формул массива (ctrl+shift+enter), которая тоже способна продаж. У меня формулаxlsx поиска. При положительном соответствующее значение изB7:B13
производится от верхней данных возвратит сервер,в какой таблице другие ячейки того
. Однако, существует ещё
(строка) и
в ячейке F2 именами клиентов с
всем его ячейкамно данные в решить нашу задачу.Критерий
ПРОСМОТР- уважайте форумчан. результате сопоставления функция другого диапазона. Рассмотримнет. ячейки).
а первый столбец искать. Если в же столбца. одна таблица, которая
Месяц с каждым из
номером повторения каждого
формулу вида: таблице должны быть
Нюанс состоит в- это то,
не получается, (мойFinnik
возвращает значение элемента пример.
excelworld.ru
Найти и вернуть значение по двум критериям (Формулы/Formulas)
В файле примера можноФункция ПОИСКПОЗ() возвращает позицию не отсортирован в ячейке D3 находитсяFL_Sal не содержит интересующую(столбец) рассматриваемого массива: значений диапазона B2:B16. имени, например,=B2&C2 отсортированы по столбцу том, что для что мы ищем Эксель не понимает
: Учел на будущее. из третьего столбцаНайдем количество заданного товара
найти применение функции искомого значения, а алфавитном порядке. значение «FL», формулаes
нас информацию, но=VLOOKUP(«Lemons»,$A$2:$I$9,MATCH(«Mar»,$A$1:$I$1,0),FALSE) Если найдено совпадение,John Doe1. Если хочется, чтобы «Дата» — в работы этой функции в предыдущем указанном
почему вначале простаяВо вложении, на (выручка) условной таблицы. на определенном складе. при поиске в не само значение.
C1 выполнит поиск ви
имеет общий столбец=ВПР(«Lemons»;$A$2:$I$9;ПОИСКПОЗ(«Mar»;$A$1:$I$1;0);ЛОЖЬ)
то выражение,
строка была более
формуле «$B$16:$B$30». в необходимо создать на
диапазоне. Разрешается использовать точка с запятой) листе «Архангельск», в Это происходит потому, Для этого используем горизонтальном массиве. Например: ПОИСКПОЗ(«б»;{«а»;»б»;»в»;»б»};0) возвращает — это левая верхняя таблицеCA_Sales с основной таблицейФормула выше – этоСТРОКА(C2:C16)-1John Doe2 читаемой, можно разделить противном случае не листе специальный диапазон символы * (звездочка) а КодИНДЕКС подходит ячейке W9 я что в третьем формулуПоиск позиции можно производить число 2 - ячейка диапазона (такжеFL_Sales– названия таблиц и таблицей поиска. обычная функциявозвращает номер соответствующейи т.д. Фокус
объединенные значения пробелом: все данные будут
критериев - ячейки, содержащие
и ? (вопросительный но не везде
excelworld.ru
Выборочные вычисления по одному или нескольким критериям
Постановка задачи
путем сложения ячеек аргументе указывается номер
=ИНДЕКС(B67:E71;ПОИСКПОЗ(A74;A67:A71;0);ПОИСКПОЗ(C74;B66:E66;0)) не только в относительную позицию буквы называемая начальной ячейкой).
Способ 1. Функция СУММЕСЛИ, когда одно условие
, если «CA» – (или именованных диапазонов),Давайте разберем следующий пример.ВПР строки (значение с нумерацией сделаем=B2&» «&C2 выведены. условия отбора — и знак) как маски_Boroda_ из листа «Склад» столбца 3 изВ файле примера, соответствующий диапазонах ячеек, но «б» в массивеФормула в таблице в которых содержаться У нас есть, которая ищет точное
-1 при помощи функции. После этого можно
- может кто подскажет указать затем этот или символы подстановки.: А конкретнее? С отобразил необходимый результат. которого берутся значения. столбец и строка и в массивах {«а»;»б»;»в»;»б»}. Позиция второй
- ПОИСКПОЗ(«Апельсины»;C2:C7;0)CA_Sales соответствующие отчеты о основная таблица (Main совпадение значения «Lemons»позволяет не включатьCOUNTIF использовать следующую формулу: вариант «ВПР по диапазон функции как Звездочка подменяет собой примером неполучания иНужно, чтобы ячейки Стоит отметить что выделены с помощью констант. Например, формула буквы «б» будетищет значение «Апельсины»и так далее. продажах. Вы, конечно table) со столбцом в ячейках от строку заголовков). Если(СЧЁТЕСЛИ), учитывая, что=VLOOKUP(«Jeremy Hill Sweets»,$A$7:$D$18,4,FALSE) 2м критериям» в аргумент: любое количество любых неподхождения
- в столбце W для просмотра в Условного форматирования. =ПОИСКПОЗ(«груши»;{«яблоки»;»ГРУШИ»;»мандарины»};0) вернет значение проигнорирована, функция вернет в диапазоне C2:C7.
Способ 2. Функция СУММЕСЛИМН, когда условий много
Результат работы функций же, можете использоватьSKU (new) A2 до A9. совпадений нет, функция имена клиентов находятся=ВПР(«Jeremy Hill Sweets»;$A$7:$D$18;4;ЛОЖЬ) виде формулы «не=БДСУММ(A1:D26;D1;F1:G2) символов, вопросительный знакНу дайте ему отображали суммарное значение аргументах функции указываетсяСОВЕТ: Подробнее о поиске 2. позицию только первой Начальную ячейку неВПР обычные названия листов, куда необходимо добавить Но так какIF в столбце B:или
массива», которая работоспособнаСердЖиГ — один любой вот так по артикулу с целая таблица (во позиций можно прочитатьЕсли искомое значение точно буквы. О том следует включать ви
и ссылки на столбец с соответствующими Вы не знаете,(ЕСЛИ) возвращает пустую=B2&COUNTIF($B$2:B2,B2)=VLOOKUP(B1,$A$7:$D$18,4,FALSE) с не сортированными: Всем Добрый день!
Способ 3. Столбец-индикатор
символ. Так, например,=ПРОСМОТР(2;1/(A2&B2=Лист2!A$2:A$6&Лист2!B$2:B$6);Лист2!C$2:C$6) разными аналитиками в втором аргументе), но в соответствующем разделе не известно, то как вернуть ВСЕ этот диапазон.ДВССЫЛ диапазоны ячеек, например ценами из другой в каком именно строку.
=B2&СЧЁТЕСЛИ($B$2:B2;B2)
=ВПР(B1;$A$7:$D$18;4;ЛОЖЬ) спискамиУважаемые эксперты, к чтобы найти всеХотя, что-то слабо конкретном регионе. сам поиск всегда сайта: Поиск позиции. с помощью подстановочных позиции искомого значения1будет следующий:‘FL Sheet’!$A$3:$B$10 таблицы. Кроме этого, столбце находятся продажиРезультатом функции
Способ 4. Волшебная формула массива
После этого Вы можетеГде ячейкаСпасибо. сожалению, не нашёл продажи у менеджеров мне верится…Serge_007 идет по первомуС помощью функций ПОИСКПОЗ() знаков можно задать
читайте ниже в
— это количество столбцов,Если данные расположены в, но именованные диапазоны у нас есть за март, тоIF использовать обычную функциюB1vikttur информацию по своему с фамилией изПАМ: Почему Вы игнорируете столбцу в указанной и ИНДЕКС() можно поиск по шаблону, разделе Поиск позиций которое нужно отсчитать разных книгах Excel,
Способ 4. Функция баз данных БДСУММ
гораздо удобнее. 2 таблицы поиска. не сможете задать(ЕСЛИ) окажется вотВПРсодержит объединенное значение: Это я тогда вопросу на этом пяти букв, можно: Дал, вообще Н/д. сводную таблицу? Это таблицы. заменить функцию ВПР(), т.е. искомое_значение может ВСЕХ текстовых значений, справа от начальной
то необходимо добавить
planetaexcel.ru
ВПР по двум критериям
Однако, когда таких таблиц Первая (Lookup table
номер столбца для такой горизонтальный массив:, чтобы найти нужный аргумента любил СМЕЩ() :) сайте, поэтому прошу
использовать критерийПохоже что-то я работа как-раз дляСкачать пример функции ВПР об этом читайте содержать знаки шаблона: удовлетворяющих критерию. ячейки, чтобы получить имя книги перед много, функция 1) содержит обновленные
третьего аргумента функции{1,»»,3,»»,5,»»,»»,»»,»»,»»,»»,12,»»,»»,»»}
заказ. Например:lookup_valueСейчас — лучше
помощи у вас.?????
делаю не так. неё. с несколькими условиями в статье о
звездочку (*) и
ПОИСКПОЗискомое_значение просматриваемый_массив столбец, из которого именованным диапазоном, например:ЕСЛИ
номераВПРROW()-3Находим
(искомое_значение), а
так:Вопрос во вложенном
. А чтобы найти всеподумаю и напишуMichael_S в Excel функции ВПР(). знак вопроса (?).; тип_сопоставления)
возвращается значение. В=VLOOKUP($D$2,INDIRECT($D3&»Workbook1!_Sales»),2,FALSE)– это не
SKU (new). Вместо этого используетсяСТРОКА()-32-й4
=ВПР($A3;ИНДЕКС($A$16:$C$30;ПОИСКПОЗ(B$2;$B$16:$B$30;);):ИНДЕКС($A$16:$C$30;ПОИСКПОЗ(B$2;$B$16:$B$30;)+СЧЁТЕСЛИ($B$16:$B$30;B$2)-1;);3;) файле. Напишу, что продажи менеджеров, у с примером: Как-то так, только
А из какого столбцаФункция ВПР (Вертикальный ПРосмотр) Звездочка соответствует любойИскомое_значение этом примере значение
=ВПР($D$2;ДВССЫЛ($D3&»Workbook1!_Sales»);2;ЛОЖЬ)
лучшее решение. Вместои названия товаров, функция
Здесь функциятовар, заказанный покупателем
– аргументПри несортированном диапазоне речь пойдёт о которых фамилия начинаетсяzegor на нормальных (больших)
брать возвращаемое значение ищет по таблице последовательности знаков, знак
- значение, используемое возвращается из столбцаЕсли функция
нее можно использовать
а вторая (LookupПОИСКПОЗ
ROWDan Browncol_index_num без обработки массивов ВПР, который ищет на букву «П»,: Здравствуйте. С помощью файлах тормозить будет.
указывается уже в с данными и вопроса соответствует любому при поиске значения DДВССЫЛ функцию
table 2) –, чтобы определить этот
(СТРОКА) действует как:(номер_столбца), т.е. номер
не обойтись. по двум критериям а заканчивается на
СУММЕСЛИМН у меняКак использовать функцию третьем аргументе. на основе критериев одиночному знаку.
вПродажи
ссылается на другуюДВССЫЛ названия товаров и
столбец. дополнительный счётчик. Так=VLOOKUP(«Dan Brown2»,$A$2:$C$16,3,FALSE) столбца, содержащего данные,Alexstt (к сожалению, я
«В» — критерий
получается найти искомоеВПР (VLOOKUP)Число 0 в последнем
запроса поиска, возвращаетПредположим, что имеется переченьпросматриваемом_массивеИскомое_значение. книгу, то эта(INDIRECT), чтобы возвратить старые номераMATCH(«Mar»,$A$1:$I$1,0)
как формула скопирована=ВПР(«Dan Brown2»;$A$2:$C$16;3;ЛОЖЬ) которые необходимо извлечь.: Спасибо такого не нашёл),П*В только если указывать
для поиска и
аргументе функции указывает соответствующее значение с товаров и мы
может быть значениемК началу страницы
книга должна быть
нужный диапазон поиска.SKU (old)ПОИСКПОЗ(«Mar»;$A$1:$I$1;0)
в ячейки F4:F9,Находим
planetaexcel.ru
Если Вам необходимо обновить
Вспомним, как работает функция ВПР: она просматривает крайний левый столбец таблицы-источника и, как только находит первое совпадение с заданным условием, возвращает (подтягивает) значение из указанного столбца в той же строке. В стандартном варианте функция ВПР ищет совпадение по одному критерию. Но что делать, если требования к поиску не ограничиваются одним условием? В этой статье рассмотрим, как работает функция ВПР в excel с несколькими условиями.
В стандартном наборе функций Excel функции ВПР с несколькими условиями не существует. Однако, есть несколько способов решить задачу поиска ВПР по двум или более условиям.
-
- Способ 1. Функция ВПР в Excel с несколькими условиями при помощи вспомогательного столбца
- Способ 2. ВПР с несколькими условиями в Excel при помощи сочетания функций ИНДЕКС / ПОИСКПОЗ
- Способ 3. ВПР по двум условиям при помощи формулы массива
- Способ 4. ВПР с несколькими условиями при помощи функции СУММЕСЛИМН
Это самый распространенный и самый простой способ в excel сделать ВПР двух или нескольких значений.
Рассмотрим на примере. Есть две таблицы — таблица-источник (зеленая “шапка”) и рабочая таблица (синяя “шапка”), в которую нужно подтянуть количество автомобилей из источника по трем условиям: марка, модель и цвет автомобиля.
В таблице-источнике создадим вспомогательный столбец, в котором объединим все имеющиеся значения в столбцах при помощи оператора конкатенации & или функцией СЦЕП. Вспомогательный столбец должен быть крайним слева (помним, что ВПР ищет совпадения в крайнем левом столбце).
Вспомним синтаксис функции ВПР:
=ВПР(искомое_значение; таблица; номер столбца; [интервальный просмотр])
В качестве искомого значения нам нужно объединить все критерии поиска в том же порядке, как во вспомогательном столбце таблицы-источника.
Если будете копировать формулу в другие ячейки, то ссылки на ячейки и диапазон таблицы в формуле необходимо закрепить знаками $.
Как видите, функция ВПР в excel с несколькими условиями (а данном случае три условия) подтянула значение из выделенной строки.
Сообщество Excel Analytics | обучение Excel
Канал на Яндекс.Дзен
Способ 2. ВПР с несколькими условиями в Excel при помощи сочетания функций ИНДЕКС / ПОИСКПОЗ
В этом способе, на самом деле, совсем не используется функция ВПР. Однако, он решает ту же самую задачу — подтянуть значения из таблицы-источника по нескольким условиям.
Этот способ удобен тем, что не нужно создавать дополнительных столбцов в таблице-источнике (на практике не всегда возможно добавить столбец — источник может быть защищен от изменений).
В данном примере мы не будем разбирать, как работают функции ИНДЕКС и ПОИСКПОЗ по отдельности, а рассмотрим только, как решить нашу задачу — сделать ВПР с несколькими условиями в excel на примере.
Скопируем в нашем примере строку с условиями поиска и напишем следующую формулу:
После написания формулы необходимо нажать сочетание клавиш Ctrl + Shift + Enter. Это необходимо сделать, т.к. это формула массива — в противном случае выйдет ошибка #ЗНАЧ.
Давайте разберем формулу:
=ИНДЕКС(L4:L13;ПОИСКПОЗ(B5&C5&D5;I4:I13&J4:J13&K4:K13;0))
-
-
- L4:L13 — массив, из которого будет подтягиваться информация. Тот столбец, данные из которого нам нужны.
- B5&C5&D5 — критерии для поиска, которые мы объединили между собой оператором конкатенации &.
- I4:I13&J4:J13&K4:K13 — столбцы, в которых будут происходить поиск по заданным критериям.
-
I4:I13 — столбец с марками автомобилей (соответствует критерию в ячейке В5)
J4:J13 — столбец с моделями автомобилей (соответствует критерию в ячейке С5)
K4:K13 — столбец с цветом автомобилей (соответствует критерию в ячейке D5)
Обратите внимание, что столбцы, в которых будет происходить поиск, должны располагаться в формуле в таком же порядке, как и критерии поиска.
-
-
- 0 — аргумент, обозначающий, что нужен поиск точного совпадения.
-
Способ 3. ВПР по двум условиям при помощи формулы массива
Рассмотрим работу функции ВПР по двум условиям на то же примере, только исключим один из критериев поиска — будем искать количество автомобилей по Модели автомобиля и Цвету. Так будет проще понять эту формулу.
Запишем следующую формулу для поиска:
=ВПР(C6;ЕСЛИ(K4:K13=D6;J4:L13;0);3;0)
В конце обязательно нужно нажать сочетание клавиш Ctrl + Shift + Enter, т.к. это формула массива, иначе будет ошибка #Н/Д.
Разберем, как работает эта формула.
С6 — это первый критерий для поиска. Но поскольку у нас есть еще один критерий (D6), то искать C6 формула будет но во всем столбце J, а только в той строке, где будет совпадение с столбце К со значением второго критерия (D6).
Таким образом, при помощи конструкции внутри формулу ВПР
ЕСЛИ(K4:K13=D6;J4:L13;0)
Создается виртуальная таблица для поиска значения первого критерия.
А дальше формула ВПР по двум условиям работает как обычная ВПР — указывается номер столбца 3 и интервальный просмотр 0 (точный поиск).
Способ 4. ВПР с несколькими условиями при помощи функции СУММЕСЛИМН
Функция СУММЕСЛИМН является полноценной альтернативой функции ВПР, если нужно подтянуть числовой результат по нескольким условиям.
Отличие функции СУММЕСЛИМН от ВПР в следующем: ВПР ищет самое первое совпадение и возвращает данные по строке с этом первом совпадении. А СУММЕСЛИМН просуммирует все значения, соответствующие критериям поиска. Нужно учитывать эту особенность.
Синтаксис функции СУММЕСЛИМН:
=СУММЕСЛИМН(Диапазон_суммирования; Диапазон_условия1; Условие1;…; Диапазон_условияN; УсловиеN)
Подтянем данные в нашу рабочую таблицу из таблицы-источника по тем же критериям, но уже при помощи функции СУММЕСЛИМН.
Функция СУММЕСЛИМН просуммировала все значения в столбце L, у которых значение в столбце I равно значению В7, значения в столбце J — C7, а значения в столбце K — D7. Как видите, результат такой же, как и при других способах.
Но, если мы добавим еще одну такую же строчку, то результат вычисления функции изменится. Именно эту особенность и нужно учитывать, если вы используете СУММЕСЛИМН вместо ВПР по нескольким условиям.
В этой статье мы рассмотрели, как работает функция ВПР в excel с несколькими условиями различными способами.
Вам может быть интересно: