Excel VLOOKUP с функцией SUM или SUMIF - примеры формул

  • Поделись Этим
Michael Brown

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

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

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

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

Обратите внимание, что это продвинутые примеры, которые предполагают, что вы знакомы с общими принципами и синтаксисом функции VLOOKUP. Если это не так, то первая часть нашего учебника по VLOOKUP для начинающих, безусловно, заслуживает вашего внимания - синтаксис Excel VLOOKUP и общее использование.

    Excel VLOOKUP и SUM - поиск суммы совпадающих значений

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

    Исходные данные:

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

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

    Решением является использование массива в 3-м параметре ( col_index_num ) функции Excel VLOOKUP. Вот общая формула:

    SUM(VLOOKUP( значение поиска , диапазон поиска , {2,3,...,n}, FALSE))

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

    А теперь давайте настроим эту комбинацию функций VLOOKUP и SUM для наших данных, чтобы найти общую сумму продаж в столбцах B - M в приведенной выше таблице:

    =SUM(VLOOKUP(B2, 'Ежемесячные продажи'! $A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))

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

    {=SUM(VLOOKUP(B2, 'Ежемесячные продажи'!$A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))}

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

    Совет. Вам может быть интересно, почему формула отображает [@Product] в качестве значения поиска на скриншоте выше. Это потому, что я преобразовал мои данные в таблицу ( Вставка вкладка> Таблица ). я нахожу очень удобной работу с полнофункциональными таблицами Excel и их структурированными ссылками. например, когда вы вводите формулу в одну ячейку, Excel автоматически копирует ее на весь столбец и таким образом экономит вам несколько драгоценных секунд :)

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

    Вы можете обойти эту проблему, используя комбинацию функций INDEX и MATCH вместо SUM и VLOOKUP, и я покажу вам несколько примеров формул в следующей статье.

    Загрузите этот образец VLOOKUP и SUM

    Как выполнить другие вычисления с помощью функции Excel VLOOKUP

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

    Операция Пример формулы Описание
    Рассчитать среднее значение {=AVERAGE(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} Формула ищет значение ячейки A2 в 'Lookup table' и вычисляет среднее значение значений в столбцах B,C и D в той же строке.
    Найти максимальное значение {=MAX(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} Формула ищет значение ячейки A2 в 'Lookup table' и находит максимальное значение в столбцах B,C и D в той же строке.
    Найти минимальное значение {=MIN(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} Формула ищет значение ячейки A2 в 'Lookup table' и находит минимальное значение в столбцах B,C и D в той же строке.
    Рассчитать % от суммы {=0.3*SUM(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} Формула ищет значение ячейки A2 в 'Lookup table', суммирует значения в столбцах B,C и D в той же строке, а затем вычисляет 30% от суммы.

    Примечание. Поскольку все приведенные выше формулы являются формулами массива, не забудьте нажать Ctrl+Shift+Enter, чтобы правильно ввести их в ячейку.

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

    Загрузите этот образец вычислений VLOOKUP

    LOOKUP AND SUM - поиск в массиве и суммирование совпадающих значений

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

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

    Как вы помните, вы не можете использовать функцию Excel VLOOKUP, поскольку у вас есть несколько экземпляров искомого значения (массив данных). Вместо этого вы используете комбинацию функций SUM и LOOKUP, как показано ниже:

    =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))

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

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

    Мы ненадолго отложим функцию SUM, поскольку ее назначение очевидно, и сосредоточимся на трех компонентах, которые перемножаются:

    1. LOOKUP($C$2:$C$10,'Таблица поиска'!$A$2:$A$16,'Таблица поиска'!$B$2:$B$16)

      Эта функция LOOKUP ищет товары, перечисленные в столбце C основной таблицы, и возвращает соответствующую цену из столбца B таблицы поиска.

    2. $D$2:$D$10

      Этот компонент возвращает количество каждого продукта, купленного каждым клиентом, которое перечислено в столбце D основной таблицы. Умноженное на цену, которая возвращается функцией LOOKUP выше, это дает стоимость каждого купленного продукта.

    3. $B$2:$B$10=$G$1

      Эта формула сравнивает имена клиентов в столбце B с именем в ячейке G1. Если найдено совпадение, она возвращает "1", иначе "0". Вы используете ее просто для того, чтобы "отсечь" имена клиентов, отличные от имени в ячейке G1, поскольку все мы знаем, что любое число, умноженное на ноль, равно нулю.

    Поскольку наша формула является формулой массива, она выполняет описанный выше процесс для каждого значения в массиве поиска. И, наконец, функция SUM суммирует продукты всех умножений. Ничего сложного, правда?

    Примечание. Чтобы формула LOOKUP работала правильно, необходимо отсортировать столбец поиска в таблице Lookup в порядке возрастания (от A до Z). Если сортировка неприемлема для ваших данных, посмотрите удивительную формулу SUM / TRANSPOSE, предложенную Leo.

    Загрузите этот пример LOOKUP и SUM

    VLOOKUP и SUMIF - поиск по & суммирование значений с критериями

    Функция SUMIF в Excel похожа на SUM, о которой мы только что говорили, тем, что она также суммирует значения. Разница в том, что функция SUMIF суммирует только те значения, которые соответствуют заданным вами критериям. Например, простейшая формула SUMIF =SUMIF(A2:A10,">10") складывает значения в ячейках с A2 по A10, которые больше 10.

    Это очень просто, верно? А теперь давайте рассмотрим более сложный сценарий. Предположим, у вас есть таблица, в которой перечислены имена продавцов и их идентификационные номера ( Таблица_поиска ). У вас есть другая таблица, которая содержит те же идентификаторы и соответствующие показатели продаж ( Главная_таблица ). Ваша задача - найти общее количество продаж, сделанных данным человеком, по его ID. При этом есть 2 осложняющих фактора:

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

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

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

    SUMIF(диапазон, критерии, [sum_range])
    • ассортимент - этот параметр не требует пояснений, просто диапазон ячеек, которые вы хотите оценить по заданным критериям.
    • критерии - условие, которое указывает формуле, какие значения суммировать. Оно может быть представлено в виде числа, ссылки на ячейку, выражения или другой функции Excel.
    • суммарный_диапазон - этот параметр необязательный, но очень важный для нас. он определяет диапазон, в котором будут суммироваться значения соответствующих ячеек. если он опущен, Excel суммирует значения ячеек, которые указаны в аргументе диапазон (1-й параметр).

    Как вы помните, мы хотим просуммировать все продажи, сделанные данным человеком, имя которого введено в ячейку F2 в основной таблице (см. рисунок выше).

    1. Диапазон - поскольку мы ищем по идентификатору продавца, то ассортимент параметром для нашей функции SUMIF является столбец B в основной таблице. Таким образом, вы можете ввести диапазон B:B, или, если вы преобразовываете данные в таблицу, вы можете использовать имя столбца вместо этого: Main_table[ID]
    2. Критерии - поскольку имена продавцов находятся в другой таблице (таблица поиска), мы должны использовать формулу VLOOKUP, чтобы найти ID, соответствующий данному человеку. Имя человека записано в ячейке F2 в основной таблице, поэтому мы ищем его с помощью этой формулы: VLOOKUP($F$2,Lookup_table,2,FALSE)

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

    3. Диапазон сумм - Это самая простая часть. Поскольку наши цифры продаж находятся в столбце C под названием "Продажи", мы просто подставляем Main_table[Sales] .

      Теперь вам нужно только собрать части формулы, и ваша формула SUMIF + VLOOKUP готова:

      =SUMIF(Main_table[ID], VLOOKUP($F$2, Lookup_table, 2, FALSE), Main_table[Sales])

    Загрузите этот образец VLOOKUP и SUMIF

    Способ выполнения vlookup в Excel без формул

    Наконец, позвольте представить вам инструмент, который может искать, сопоставлять и объединять ваши таблицы без каких-либо функций или формул. Инструмент Merge Tables, включенный в наш Ultimate Suite for Excel, был разработан и создан как экономящая время и простая в использовании альтернатива функциям VLOOKUP и LOOKUP в Excel, и он может быть очень полезен как начинающим, так и опытным пользователям.

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

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

    Доступные загрузки

    VLOOKUP с SUM и SUMIF - примеры формул (файл.xlsx)

    Ultimate Suite - пробная версия (файл .exe)

    Майкл Браун — увлеченный технологический энтузиаст, стремящийся упростить сложные процессы с помощью программных инструментов. Имея более чем десятилетний опыт работы в технологической отрасли, он отточил свои навыки в Microsoft Excel и Outlook, а также в Google Sheets и Docs. Блог Майкла посвящен тому, чтобы делиться своими знаниями и опытом с другими, предоставляя простые советы и учебные пособия для повышения производительности и эффективности. Являетесь ли вы опытным профессионалом или новичком, в блоге Майкла вы найдете ценную информацию и практические советы, которые помогут вам максимально эффективно использовать эти важные программные инструменты.