Excel счет если впр

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Где

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

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

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

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

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

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

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

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

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

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

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

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

В этом уроке Вы найдёте несколько интересных примеров, демонстрирующих как использовать функцию ВПР (VLOOKUP) вместе с СУММ (SUM) или СУММЕСЛИ (SUMIF) в Excel, чтобы выполнять поиск и суммирование значений по одному или нескольким критериям.

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

Задачи могут отличаться, но их смысл одинаков – необходимо найти и просуммировать значения по одному или нескольким критериям в Excel. Что это за значения? Любые числовые. Что это за критерии? Любые… Начиная с числа или ссылки на ячейку, содержащую нужное значение, и заканчивая логическими операторами и результатами формул Excel.

Итак, есть ли в Microsoft Excel функционал, способный справиться с описанными задачами? Конечно же, да! Решение кроется в комбинировании функций ВПР (VLOOKUP) или ПРОСМОТР (LOOKUP) с функциями СУММ (SUM) или СУММЕСЛИ (SUMIF). Примеры формул, приведённые далее, помогут Вам понять, как эти функции работают и как их использовать с реальными данными.

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

  • ВПР и СУММ – суммируем все найденные совпадающие значения
  • Другие вычисления с ВПР (СРЗНАЧ, МАКС, МИН)
  • ПРОСМОТР и СУММ – поиск в массиве и сумма связанных значений
  • ВПР и СУММЕСЛИ – суммируем значения, удовлетворяющие определённому критерию

Содержание

  1. ВПР и СУММ в Excel – вычисляем сумму найденных совпадающих значений
  2. Выполняем другие вычисления, используя функцию ВПР в Excel
  3. Вычисляем среднее:
  4. Находим максимум:
  5. Находим минимум:
  6. Вычисляем % от суммы:
  7. ПРОСМОТР и СУММ – поиск в массиве и сумма связанных значений
  8. ВПР и СУММЕСЛИ – находим и суммируем значения, удовлетворяющие определённому критерию

ВПР и СУММ в Excel – вычисляем сумму найденных совпадающих значений

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

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

Использование ВПР и СУММ в Excel

Теперь нам необходимо сделать таблицу итогов с суммами продаж по каждому товару.

Решение этой задачи – использовать массив констант в аргументе col_index_num (номер_столбца) функции ВПР. Вот пример формулы:

=SUM(VLOOKUP(lookup value, lookup range, {2,3,4}, FALSE))
=СУМ(ВПР(искомое_значение;таблица;{2;3;4};ЛОЖЬ))

Как видите, мы использовали массив {2,3,4} для третьего аргумента, чтобы выполнить поиск несколько раз в одной функции ВПР, и получить сумму значений в столбцах 2, 3 и 4.

Теперь давайте применим эту комбинацию ВПР и СУММ к данным в нашей таблице, чтобы найти общую сумму продаж в столбцах с B по M:

=SUM(VLOOKUP(B2,'Monthly sales'!$A$2:$M$9,{2,3,4,5,6,7,8,9,10,11,12,13},FALSE))
=СУМ(ВПР(B2;'Monthly sales'! $A$2:$M$9;{2;3;4;5;6;7;8;9;10;11;12;13};ЛОЖЬ))

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

{=SUM(VLOOKUP(B2,'Monthly sales'!$A$2:$M$9,{2,3,4,5,6,7,8,9,10,11,12,13},FALSE))}
{=СУМ(ВПР(B2;'Monthly sales'!$A$2:$M$9;{2;3;4;5;6;7;8;9;10;11;12;13};ЛОЖЬ))}

Использование ВПР и СУММ в Excel

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

Возможно, Вам стало любопытно, почему формула на рисунке выше отображает [@Product], как искомое значение. Это происходит потому, что мои данные были преобразованы в таблицу при помощи команды Table (Таблица) на вкладке Insert (Вставка). Мне удобнее работать с полнофункциональными таблицами Excel, чем с простыми диапазонами. Например, когда Вы вводите формулу в одну из ячеек, Excel автоматически копирует её на весь столбец, что экономит несколько драгоценных секунд.

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

Эту проблему можно преодолеть, используя комбинацию функций INDEX (ИНДЕКС) и MATCH (ПОИСКПОЗ) вместо VLOOKUP (ВПР) и SUM (СУММ). Далее в этой статье Вы увидите несколько примеров таких формул.

Выполняем другие вычисления, используя функцию ВПР в Excel

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

Вычисляем среднее:

{=AVERAGE(VLOOKUP(A2,'Lookup Table'!$A$2:$D$10,{2,3,4},FALSE))}
{=СРЗНАЧ(ВПР(A2;'Lookup Table'!$A$2:$D$10;{2;3;4};ЛОЖЬ))}

Формула ищет значение из ячейки A2 на листе Lookup table и вычисляет среднее арифметическое значений, которые находятся на пересечении найденной строки и столбцов B, C и D.

Находим максимум:

{=MAX(VLOOKUP(A2,'Lookup Table'!$A$2:$D$10,{2,3,4},FALSE))}
{=МАКС(ВПР(A2;'Lookup Table'!$A$2:$D$10;{2;3;4};ЛОЖЬ))}

Формула ищет значение из ячейки A2 на листе Lookup table и возвращает максимальное из значений, которые находятся на пересечении найденной строки и столбцов B, C и D.

Находим минимум:

{=MIN(VLOOKUP(A2,'Lookup Table'!$A$2:$D$10,{2,3,4},FALSE))}
{=МИН(ВПР(A2;'Lookup Table'!$A$2:$D$10;{2;3;4};ЛОЖЬ))}

Формула ищет значение из ячейки A2 на листе Lookup table и возвращает минимальное из значений, которые находятся на пересечении найденной строки и столбцов B, C и D.

Вычисляем % от суммы:

{=0.3*SUM(VLOOKUP(A2,'Lookup Table'!$A$2:$D$10,{2,3,4},FALSE))}
{=0.3*СУММ(ВПР(A2;'Lookup Table'!$A$2:$D$10;{2;3;4};ЛОЖЬ))}

Формула ищет значение из ячейки A2 на листе Lookup table, затем суммирует значения, которые находятся на пересечении найденной строки и столбцов B, C и D, и лишь затем вычисляет 30% от суммы.

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

Использование ВПР и СУММ в Excel

ПРОСМОТР и СУММ – поиск в массиве и сумма связанных значений

В случае, когда Ваше искомое значение — это массив, функция ВПР становится бесполезной, поскольку она не умеет работать с массивами данных. В такой ситуации Вы можете использовать функцию ПРОСМОТР (LOOKUP) в Excel, которая похожа на ВПР, к тому же работает с массивами так же, как и с одиночными значениями.

Давайте разберем пример, чтобы Вам стало понятнее, о чём идет разговор. Предположим, у нас есть таблица, в которой перечислены имена клиентов, купленные товары и их количество (таблица Main table). Кроме этого, есть вторая таблица, содержащая цены товаров (таблица Lookup table). Наша задача – написать формулу, которая найдёт сумму всех заказов заданного клиента.

Использование ВПР и СУММ в Excel

Как Вы помните, нельзя использовать функцию ВПР, если искомое значение встречается несколько раз (это массив данных). Используйте вместо этого комбинацию функций СУММ и ПРОСМОТР:

=SUM(LOOKUP($C$2:$C$10,'Lookup table'!$A$2:$A$16,'Lookup table'!$B$2:$B$16)*$D$2:$D$10*($B$2:$B$10=$G$1))
=СУММ(ПРОСМОТР($C$2:$C$10;'Lookup table'!$A$2:$A$16;'Lookup table'!$B$2:$B$16)*$D$2:$D$10*($B$2:$B$10=$G$1))

Так как это формула массива, не забудьте нажать комбинацию Ctrl+Shift+Enter при завершении ввода.

Lookup table – это название листа, где находится просматриваемый диапазон.

Использование ВПР и СУММ в Excel

Давайте проанализируем составные части формулы, чтобы Вы понимали, как она работает, и могли настроить её под свои нужды. Функцию СУММ пока оставим в стороне, так как её цель очевидна.

  1. LOOKUP($C$2:$C$10,'Lookup table'!$A$2:$A$16,'Lookup table'!$B$2:$B$16)
    ПРОСМОТР($C$2:$C$10;'Lookup table'!$A$2:$A$16;'Lookup table'!$B$2:$B$16)

    Функция ПРОСМОТР просматривает товары, перечисленные в столбце C основной таблицы (Main table), и возвращает соответствующую цену из столбца B просматриваемой таблицы (Lookup table).

  2. $D$2:$D$10 – количество товаров, приобретенных каждым покупателем, чьё имя есть в столбце D основной таблицы. Умножая количество товара на цену, которую возвратила функция ПРОСМОТР, получаем стоимость каждого приобретенного продукта.
  3. $B$2:$B$10=$G$1 – формула сравнивает имена клиентов в столбце B основной таблицы с именем в ячейке G1. Если есть совпадение, возвращается 1, в противном случае 0. Таким образом, отбрасываются имена покупателей, отличающиеся от указанного в ячейке G1, ведь все мы знаем – умножение на ноль дает ноль.

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

Замечание. Чтобы функция ПРОСМОТР работала правильно, просматриваемый столбец должен быть отсортирован в порядке возрастания.

ВПР и СУММЕСЛИ – находим и суммируем значения, удовлетворяющие определённому критерию

Функция СУММЕСЛИ (SUMIF) в Excel похожа на СУММ (SUM), которую мы только что разбирали, поскольку она тоже суммирует значения. Разница лишь в том, что СУММЕСЛИ суммирует только те значения, которые удовлетворяют заданному Вами критерию. Например, простейшая формула с СУММЕСЛИ:

=SUMIF(A2:A10,">10")
=СУММЕСЛИ(A2:A10;">10")

– суммирует все значения ячеек в диапазоне A2:A10, которые больше 10.

Очень просто, правда? А теперь давайте рассмотрим немного более сложный пример. Предположим, что у нас есть таблица, в которой перечислены имена продавцов и их номера ID (Lookup table). Кроме этого, есть ещё одна таблица, в которой те же ID связаны с данными о продажах (Main table). Наша задача – найти сумму продаж для заданного продавца. Здесь есть 2 отягчающих обстоятельства:

  • Основная таблица (Main table) содержит множество записей для одного ID в случайном порядке.
  • Вы не можете добавить столбец с именами продавцов к основной таблице.

Использование ВПР и СУММ в Excel

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

Перед тем, как мы начнём, позвольте напомнить Вам синтаксис функции СУММЕСЛИ (SUMIF):

SUMIF(range,criteria,[sum_range])
СУММЕСЛИ(диапазон;критерий;[диапазон_суммирования])

  • range (диапазон) – аргумент говорит сам за себя. Это просто диапазон ячеек, которые Вы хотите оценить заданным критерием.
  • criteria (критерий) – условие, которое говорит формуле, какие значения суммировать. Может быть числом, ссылкой на ячейку, выражением или другой функцией Excel.
  • sum_range (диапазон_суммирования) – необязательный, но очень важный для нас аргумент. Он определяет диапазон связанных ячеек, которые будут суммироваться. Если он не указан, Excel суммирует значения ячеек, в первом аргументе функции.

Собрав все воедино, давайте определим третий аргумент для нашей функции СУММЕСЛИ. Как Вы помните, мы хотим суммировать все продажи, совершённые определённым продавцом, чьё имя задано в ячейке F2 (смотрите рисунок, приведённый выше).

  1. range (диапазон) – так как мы ищем по ID продавца, значениями этого аргумента будут значения в столбце B основной таблицы (Main table). Можно задать диапазон B:B (весь столбец) или, преобразовав данные в таблицу, использовать имя столбца Main_table[ID].
  2. criteria (критерий) – так как имена продавцов записаны в просматриваемой таблице (Lookup table), используем функцию ВПР для поиска ID, соответствующего заданному продавцу. Имя записано в ячейке F2, поэтому для поиска используем формулу:

    VLOOKUP($F$2,Lookup_table,2,FALSE)
    ВПР($F$2;Lookup_table;2;ЛОЖЬ)

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

  3. sum_range (диапазон_суммирования) – это самая простая часть. Так как данные о продажах записаны в столбец C, который называется Sales, то мы просто запишем Main_table[Sales].

Всё, что Вам осталось сделать, это соединить части в одно целое, и формула СУММЕСЛИ+ВПР будет готова:

=SUMIF(Main_table[ID],VLOOKUP($F$2,Lookup_table,2,FALSE),Main_table[Sales])
=СУММЕСЛИ(Main_table[ID];ВПР($F$2;Lookup_table;2;ЛОЖЬ);Main_table[Sales])

Использование ВПР и СУММ в Excel

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

Skip to content

ВПР с несколькими условиями: 5 примеров.

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

Мы предложим вам несколько вариантов решения проблемы поиска по нескольким условиям.

  1. ВПР по нескольким условиям с использованием дополнительного столбца.
  2. ВПР по двум условиям при помощи формулы массива.
  3. ВПР по нескольким критериям с применением массивов — способ 2.
  4. Двойной ВПР при помощи ИНДЕКС + ПОИСКПОЗ
  5. Достойная замена – функция СУММПРОИЗВ.

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

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

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

Сразу по трем столбцам функция ВПР искать не может. Поэтому нам нужно объединить их в один. И, поскольку поиск производится всегда в крайнем левом (первом) столбце, то нужно добавить его в нашу таблицу тоже слева.

Вставляем перед таблицей с данными дополнительный столбец A. Затем при помощи оператора & объединяем в нем содержимое B,C и D. Записываем в А7

=B7&C7&D7

и копируем в находящиеся ниже ячейки.

Формула поиска в D4 будет выглядеть:

=ВПР(D1&D2&D3;A7:E20;5;0)

В диапазон поиска включаем и наш дополнительный столбец. Критерий поиска – также объединение 3 значений. И извлекаем результат из 5 колонки.

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

Вид станет приятнее, а на результаты это никак не повлияет.

ВПР по двум условиям при помощи формулы массива.

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

Для этого в верхней части нашего листа запишем критерии поиска: дата и магазин. В ячейке B3 будем выводить сумму выручки.

Формула в B3 выглядит следующим образом:

{=ВПР(B1;ЕСЛИ(B6:B19=B2;A6:C19;»»);3;0)}

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

Разберем процесс подробно.

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

ЕСЛИ(B6:B19=B2;A6:C19;»»)

То есть, в том случае, если наименование магазина совпадает с критерием в ячейке B2, мы оставляем исходные значения из нашего диапазона. А если нет – заменяем их на пробелы. И так по каждой строке.

В результате получим вот такой виртуальный массив данных на основе нашей исходной таблицы:

Как видите, строки, в которых ранее был «Магазин 1», заменены на пустые. И теперь искать нужную дату мы будем только среди информации по «Магазин 2». И извлекать значения выручки из третьей колонки.

С такой работой функция ВПР вполне справится.

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

=ВПР(B1;ЕСЛИ(B6:B19=B2;A6:C19;»»);3;0)

И затем нажимаете комбинацию клавиш CTRL+Shift+Enter.  При этом Excel поймет, что вы хотите ввести формулу массива и сам подставит скобки.

Таким образом, функция ВПР поиск по двум столбцам производит в 2 этапа: сначала мы очищаем диапазон данных от строк, не соответствующих одному из условий, при помощи функции ЕСЛИ и формулы массива. А затем уже в этой откорректированной информации производим обычный поиск по одному только второму критерию при помощи ВПР.

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

Вот как это будет выглядеть.

ВПР по нескольким критериям с применением массивов — способ 2.

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

Условия возьмем те же, что и в предыдущем примере.

Формулу в С4 введем такую:

=ВПР(C1&C2&C3;ВЫБОР({1;2};A7:A20&B7:B20&C7:C20;D7:D20);2;0)

Естественно, не забываем нажать CTRL+Shift+Enter.

Теперь давайте пошагово разберем, как это работает.

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

Как и в предыдущем примере, мы ищем текст из объединенных в одно целое условий поиска.

Далее определяем данные, среди которых будем искать.

ВЫБОР({1;2};A7:A20&B7:B20&C7:C20;D7:D20)

Конструкция вида  A7:A20&B7:B20&C7:C20;D7:D20  создает 2 элемента. Первый – это объединение колонок A, B и C из исходных данных. Если помните, то же самое мы делали в нашем дополнительном столбце. Второй D7:D20 – это значения, одно из которых нужно в итоге выбрать.

Функция ВЫБОР  позволяет из этих элементов создать массив. {1,2} как раз и означает, что нужно взять сначала первый элемент, затем второй, и объединить их в виртуальную таблицу – массив.

В первой колонке этой виртуальной таблицы мы будем искать, а из второй – извлекать результат.

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

Двойной ВПР при помощи ИНДЕКС + ПОИСКПОЗ

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

Существуют, пожалуй, даже более гибкие решения, нежели функция ВПР. Это комбинация функций ИНДЕКС + ПОИСКПОЗ.

Область их применения очень велика, о чем бы также будем рассказывать на сайте mister-office.ru.

А пока вернемся вновь к нашей задаче.

Формула в С4 теперь выглядит так:

=ИНДЕКС(D7:D20;ПОИСКПОЗ(1;(A7:A20=C1)*(B7:B20=C2)*(C7:C20=C3);0))

И не забываем при вводе нажать CTRL+Shift+Enter! Это формула массива.

Теперь давайте разбираться, как это работает.

Функция ИНДЕКС в нашем случае позволяет извлечь элемент из списка по его порядковому номеру. Список – это диапазон D7:D20, где записаны суммы выручки. А вот порядковый номер, который нужно извлечь, мы определяем при помощи ПОИСКПОЗ.

Синтаксис здесь следующий:

ПОИСКПОЗ(что_ищем; где_ищем; тип_поиска)

Тип поиска ставим 0, то есть точное совпадение. В нашем случае мы будем искать 1. Далее мы определим массив, в котором будем работать.

Выражение  (A7:A20=C1)*(B7:B20=C2)*(C7:C20=C3) позволит создать виртуальную таблицу примерно такого вида:

Как видите, первоначально мы последовательно сравниваем каждое значение с нашим критерием отбора. В столбце А у нас записаны месяцы – сравниваем их с месяцем-критерием из ячейки C1. В случае совпадения получаем ИСТИНА, иначе – ЛОЖЬ. Аналогично последовательно проверяем год и название магазина. А затем просто перемножаем значения. Поскольку логические переменные для Excel – это либо 0, либо 1, то произведение их может быть равно 1 только в том случае, если мы имеем по каждой колонке ИСТИНА (то есть,1). Во всех остальных случаях получаем 0.

Убеждаемся, что цифра 1 встречается только единожды.

При помощи ПОИСКПОЗ определяем, на какой позиции она находится. На какой позиции находится 1, на той же позиции находится в массиве и искомая сумма выручки. В нашем случае это 10-я.

Далее при помощи ИНДЕКС извлекаем 10-ю по счету выручку.

Таким образом мы выбрали значение по нескольким условиям без использования функции ВПР.

Достойная замена – функция СУММПРОИЗВ.

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

Поясним расчеты.

Выражение

=СУММПРОИЗВ((A2:A27=$G$2)*(B2:B27=$G$3)*($C$2:$C$27=G4)*(D2:D27))

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

Последовательно по каждой строке диапазона от 2-й до 27-й она проверяет совпадение каждого соответствующего значения с критерием поиска. Эти результаты перемножаются между собой и в итоге еще умножаются на сумму выручки. Если среди трех условий будет хотя бы одно несовпадение, то итогом будет 0. В случае совпадения сумма выручки трижды умножится на 1.

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

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

Для этого из формулы просто уберем сравнение по дате.

=СУММПРОИЗВ((A2:A27=$G$2)*(B2:B27=$G$3)*(D2:D27))

Кстати, возможен и другой вариант расчета с этой же функцией:

=СУММПРОИЗВ(—(A2:A27=$G$2);—(B2:B27=$G$3);(D2:D27))

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

[the_ad_group id=»48″]

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

0 / 0 / 0

Регистрация: 27.07.2015

Сообщений: 27

1

Как совместить ВПР и СЧЕТЕСЛИ?

08.09.2015, 07:07. Показов 13635. Ответов 8


Студворк — интернет-сервис помощи студентам

Добрый день, уважаемые!

Нужно брать данные с листа «Закрытие месяца», файл менять нельзя!
И в листе «Свод месяц» посчитать количество одинаковых значении по участком учета.
Никак не получается совместить ВПР и СЧЕТЕСЛИ
Пример прилагается.

С уважением!



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

08.09.2015, 07:07

Ответы с готовыми решениями:

Функция ВПР или СЧЕТЕСЛИ
Помогите создать формулу автоматического подсчета. Возможно ли такое? Файл пример прилагается.

счетесли
как прописать функцию счетесли (или может другая есть), чтобы просчитать количество номеров, но по…

функция СЧЕТЕСЛИ
Добрый день!

У меня очень коротенький вопрос:
подскажите пожалуйста, как для этой записи…

Функция СЧЕТЕСЛИ
Дорогие форумяне! помогите с функцией….
какой нужно поставить критерий, чтобы она считала числа…

8

5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

08.09.2015, 07:21

2

Что означают 1-15?



0



0 / 0 / 0

Регистрация: 27.07.2015

Сообщений: 27

08.09.2015, 07:51

 [ТС]

3

это те значение которые составлен «закрытие месяца»
например: по участку учета «Учет банковских операций» цифра 1 повторяется 123 раз, цифра 2 повторяется 35 раз и так до 15



0



5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

08.09.2015, 08:03

4

Лучший ответ Сообщение было отмечено Tumatayev как решение

Решение

Вариант

Код

=СУММПРОИЗВ(('Закрытие месяца'!$A$9:$A$31=$A3)*('Закрытие месяца'!$B$9:$FR$31=C$1))



1



0 / 0 / 0

Регистрация: 27.07.2015

Сообщений: 27

08.09.2015, 08:15

 [ТС]

5

Спасибо огромное!!! Все работает



0



2640 / 1697 / 694

Регистрация: 04.09.2015

Сообщений: 3,367

08.09.2015, 09:40

6

Лучший ответ Сообщение было отмечено Tumatayev как решение

Решение

Если уж очень хочется решение с ВПР(). Формула массива

Код

=СУММ(Ч(ВПР($A3;'Закрытие месяца'!$A$9:$FR$31;СТОЛБЕЦ($A$1:$FR$1);)=C$1))



2



0 / 0 / 0

Регистрация: 27.07.2015

Сообщений: 27

08.09.2015, 13:06

 [ТС]

7

когда я формулу копирую, она не работает? там вреде есть скобки {}, если набрать вручную то также не работают(
в чем проблема? или я туплю



0



3827 / 2254 / 751

Регистрация: 02.11.2012

Сообщений: 5,928

08.09.2015, 13:24

8

Лучший ответ Сообщение было отмечено Tumatayev как решение

Решение

Цитата
Сообщение от Tumatayev
Посмотреть сообщение

в чем проблема? или я туплю

формула массива вводится тремя клавишами cthl+shift+enter , после ввода у формулы появляются фигурные скобки.

вариант через СЧЕТЕСЛИ

Код

=СЧЁТЕСЛИ(ИНДЕКС('Закрытие месяца'!$B$9:$FR$31;ПОИСКПОЗ($A3;'Закрытие месяца'!$A$9:$A$31;0););C$1)



1



0 / 0 / 0

Регистрация: 27.07.2015

Сообщений: 27

08.09.2015, 15:23

 [ТС]

9

спасибо огромное)



0



ВПР+СЧЕТЕСЛИ

nikitan95

Дата: Пятница, 25.01.2013, 21:09 |
Сообщение № 1

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

Ранг: Обитатель

Сообщений: 410


Репутация:

0

±

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


2016

Доброго всем времени! Снова обращаюсь к Вам, уважаемые профессионалы. Проблема вот в чем: два листа — в первом род трудовой деятельности и их допустимый лимит, а во-втором персонал, где рядом через выпадающий список выбирается их род трудовой деятельности. Какую формулу записать в УФ, чтобы при превышении лимита, ячейка закрашивалась в определенный цвет. На скудный мой ум приходит лишь сочетание ВПР и СЧЕТЕСЛИ.. Но даже и так у меня ничего толкового не вышло.. Прошу Вас помочь..

 

Ответить

ikki

Дата: Пятница, 25.01.2013, 21:17 |
Сообщение № 2

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

Ранг: Старожил

Сообщений: 1906


Репутация:

504

±

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


Excel 2003, 2010

так?

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

3757877.xlsx
(10.1 Kb)


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki

Сообщение отредактировал ikkiПятница, 25.01.2013, 21:18

 

Ответить

ABC

Дата: Пятница, 25.01.2013, 21:23 |
Сообщение № 3

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

Ранг: Обитатель

Сообщений: 397


Репутация:

112

±

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


Excel 2007

вариант


MS Excel 2007 and 2010…
——————————-
С Уважением, Даулет

 

Ответить

nikitan95

Дата: Пятница, 25.01.2013, 21:25 |
Сообщение № 4

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

Ранг: Обитатель

Сообщений: 410


Репутация:

0

±

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


2016

ikki, спасибо, друг! именно так! работает как немецкие часы) Благодарствую!

 

Ответить

nikitan95

Дата: Пятница, 25.01.2013, 21:41 |
Сообщение № 5

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

Ранг: Обитатель

Сообщений: 410


Репутация:

0

±

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


2016

ABC, как считаете, в смысле скорости какой вариант лучше? Лично я склоняюсь к первому, ибо индексация думаю требует больше времени. А обрабатывать придется около 300 строк. И мнения других форумчан на сей счет какова?

 

Ответить

Michael_S

Дата: Пятница, 25.01.2013, 21:56 |
Сообщение № 6

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

Ранг: Старожил

Сообщений: 2012


Репутация:

373

±

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


Excel2016

У одного ВПР, у другого — индекс/поиспоз; в принципе одно и то же… и по скорости тоже

 

Ответить

nikitan95

Дата: Пятница, 25.01.2013, 22:00 |
Сообщение № 7

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

Ранг: Обитатель

Сообщений: 410


Репутация:

0

±

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


2016

Мнения Ветерана считаю авторитетным. Спасибо. Учту.

 

Ответить

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Excel счет если в ячейке текст
  • Excel счет если больше числа
  • Excel счет если больше или меньше
  • Excel счет дней между датами
  • Excel счастливый или не счастливый билет

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии