Формула суммпроизв в excel примеры с несколькими условиями массив

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

Принципы работы СУММПРОИЗВ с несколькими условиями в Excel

Синтаксис функции СУММПРОИЗВ — следующий:

Синтаксис схема

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

тоимость реализации товаров

СУММПРОИЗВ поочередно умножила соответствующие значения из двух массивов (450*3; 340*6 и так далее) и суммировала результаты. Функция СУММПРОИЗВ поддерживает работу с массивами, это означает, что можно использовать логику формул массива, используя СУММПРОИЗВ. Кстати, если помните, для ввода формул массива всегда обязательно следует использовать сочетание клавиш Ctrl+Shift+Enter. В нашем случае надобности в этом нет, поскольку СУММПРОИЗВ работает по логике формул массива по определению. В следующем примере у нас есть таблица, которая содержит информацию о компаниях, регионах их деятельности, плановых продажах и фактических продажах. Наша задача – узнать, сколько компаний выполнили план по реализации товаров или услуг. Эту задачу можно решить и иным способом, например, добавить столбец, в котором сосчитать процент выполнения плана, затем применить СЧЕТЕСЛИ или СЧЕТЕСЛИМН. И это хороший и правильный способ, Однако!!!, можно выполнить задачу проще и быстрее. В ячейке Е23 пишем формулу:

СУММПРОИЗВ

Таким образом, условие D13:D20>=C13:C20 будет по очереди применяться к паре значений по ряду, затем это сравнение будет возвращать логическое значение ложь или истину. Для того чтобы трансформировать ложь и истину в числовое значение, умножаем содержащееся внутри СУММПРОИЗВ условие на 1. Ложь*1=0, истина*1=1. Затем все полученные 1 суммируются:

условие на 1

В предыдущем примере мы использовали одно условие, но при необходимости можно добавлять дополнительные условия. Например, нам нужно найти сколько компаний выполнили план в Северной Европе. Для этого нам следует к имеющийся формуле добавить еще одно условие – диапазон В13:В20, ячейки которого содержат текст «Северная Европа»:

промежуточные итоги

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

итого по условию критерия

Суммирование промежуточных итогов в Excel по условию

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

Сумма промежуточных итогов

Теперь наша ИСТИНА будет умножаться на соответствующую величину продаж, а ЛОЖЬ при умножении будет возвращать ноль. Функции, работающие с условиями, сопровождаются логическими операторами И, ИЛИ, НЕ и так далее. Если посмотреть на нашу формулу, два заданных условия связаны между собой логическим оператором И, то есть, выполняется поиск компаний, в которых и выполнен план, и расположение – Северная Европа. Что, если нам нужно связать условия логическим оператором ИЛИ? Допустим, нам нужно просуммировать сумму компаний из регионов Северная и Центральная Европа. Тогда между двумя условиями нужно вместо умножения поставить знак «плюс»:

связать условия оператором ИЛИ

Выборка данных из диапазона по нескольким условиям в Excel

У нас есть таблица с данными о сотрудниках и их баллах, полученные за тестирование навыков. Нам нужно выбрать среди сотрудников тех, чьи результаты оказались лучше остальных. Первым делом нужно посчитать среднее значение. Можно сделать это через функцию СРЗНАЧ и это будет правильно:

СРЗНАЧ

Сейчас вроде как определился лидер, Джек, у которого наибольшее среднее значение. Однако, если взглянуть на общую картинку с баллами, увидим, что высокие баллы Джек набрал по тем категориям, которые не являются первоочередными для выполнения обязанностей. А Мария, которая находится на втором месте, обогнала Джека по тестам «Знание инструментов анализа продаж» и «Знание законодательных актов». То есть, важен вес определенного теста. Нам нужно не среднее значение, а средневзвешенное. В таких случаях используем СУММПРОИЗВ. У нас есть еще одна таблица, в которой имеется информация о весомости каждого теста. В ячейке В80 пишем формулу:

еще одна таблица

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

умножает и суммирует столбец

Теперь заново внимательно смотрим результаты – у нас переопределялся лидер. В прошлом примере Джек занимал первое место, теперь у него самый низкий результат. Мария из второго места ушла на 3, а лидером оказался Питер.

Работа функции СУММПРОИЗВ с текстовыми значениями в Excel

Еще один простой, но работающий пример использования:

текстовые значения

В этом примере мы сосчитали количество ячеек, содержимое которых превышает 20 символов. Работает эта формула изнутри: ДЛСТР считает сколько всего символов содержит текст в ячейке (возвращаемый результат функции ДЛСТР можно посмотреть по столбцу Е). Затем элементы из массива сопоставляются с условием «больше 20» и приобретают значение ЛОЖЬ или ИСТИНА. После этого функция Ч трансформирует полученные логические результаты в числа 1 и 0. В конце СУММПРОИЗВ подсчитывает количество соответствующих ячеек:

количество по критерию условия

download file Скачать примеры СУММПРОИЗВ с несколькими условиями в Excel

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

Как не забивать гвозди микроскопом с функцией СУММПРОИЗВ

Стандартное использование

Базовый синтаксис нашей функции прост:

=СУММПРОИЗВ(Массив1; Массив2; … )

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

Базовый сценарий применения СУММПРОИЗВ

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

=B2*C2+B3*C3+B4*C4+B5*C5

Технически, перемножаемых массивов (диапазонов) может быть не два, а три или больше (до 255). Главное, чтобы они были одного размера. Удобно, но ничего особенно. Однако, использовать СУММПРОИЗВ только так — забивать гвозди микроскопом, ибо, на самом деле, она умеет гораздо больше.

Работа с массивами без Ctrl+Shift+Enter

Если вы хоть немного знакомы в Excel с формулами массива, то должны понимать их мощь и красоту. Иногда одна формула массива может заменить несколько столбцов дополнительных вычислений и ручного труда. Но у формул массива есть и минусы. Главные — это относительная сложность понимания, замедление пересчета книги и необходимость вводить эти формулы сочетанием Ctrl+Shift+Enter вместо обычного Enter. И вот как раз с последним может помочь наша функция СУММПРОИЗВ. Нюанс в том, что она умеет работать с массивами по определению, т.е. не требует обязательного нажатия Ctrl+Shift+Enter при вводе.

На этом факте основано большинство трюков с использованием СУММПРОИЗВ (SUMPRODUCT). Давайте, для примера, рассмотрим пару-тройку наиболее характерных сценариев.

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

Допустим, нам нужно посчитать количество филиалов компании, где план выполнен (т.е. факт больше или равен плану). Это можно сделать одной формулой с СУММПРОИЗВ без дополнительных столбцов:

Подсчет количества условий

Умножение на 1, в данном случае, нужно, чтобы преобразовать результаты сравнения плана и факта — логическую ИСТИНУ и ЛОЖЬ в 1 и 0, соответственно.

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

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

СУММПРОИЗВ по нескольким условиям

Фактически, получается что-то весьма похожее на математическую функцию выборочного подсчета СУММЕСЛИМН (SUMIFS), которая также умеет проверять несколько условий (до 127) и суммировать по ним значения из заданного диапазона.

Логические связки И и ИЛИ (AND и OR)

Если нужно связывать условия не логическим «И», как в примере выше (Факт>=План) И (Регион=Восток), а логическим ИЛИ, то конструкция немного изменится — знак умножения заменяется на плюс:

СУММЕСЛИ с условиями ИЛИ

Подсчет по данным из закрытого(!) файла

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

СУММПРОИЗВ из закрытой книги

…то вторая формула с классической функцией СЧЁТЕСЛИМН (COUNTIFS) будет работать только до тех пор, пока исходный файл открыт. Если его закрыть, то появляется ошибка #ЗНАЧ! Наша же функция СУММПРОИЗВ (SUMPRODUCT) спокойно считает по данным даже из неоткрытой книги!

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

  • Что такое формулы массива и как они работают
  • Как производить выборочные вычисления по одному или нескольким критериям

Skip to content

Функция СУММПРОИЗВ с примерами формул

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

Когда вы впервые слышите название СУММПРОИЗВ, оно может звучать как какая-то бесполезная формула, выполняющая обычную операцию суммы произведений. Но это определение не показывает даже крошечной части того, на что способна функция Excel СУММПРОИЗВ (на английском – SUMPRODUCT).

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

  • Функция СУММПРОИЗВ в Excel — синтаксис и использование
  • Логика работы СУММПРОИЗВ в Excel
  • Как работает СУММПРОИЗВ с несколькими условиями
  • Как работает формула СУММПРОИЗВ с одним условием
  • Как пересчитать, суммировать или найти среднее по нескольким условиям
  • 1. Формула с логикой И
  • 2. Формула с логикой ИЛИ
  • 3. Формула с логикой И и ИЛИ
  • Формула СУММПРОИЗВ для средневзвешенного значения
  • СУММПРОИЗВ как альтернатива формулам массива
  • Excel СУММПРОИЗВ — примеры расширенных формул

Функция СУММПРОИЗВ в Excel — синтаксис и использование

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

Синтаксис функции СУММПРОИЗВ прост и понятен:

СУММПРОИЗВ(массив1; [массив2]; [массив3]; …)

Где массив1, массив2 и т. д. — это непрерывные диапазоны ячеек или массивов чисел, элементы которых вы хотите перемножить, а затем сложить.

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

Максимальное количество массивов — 255 в Excel 365-2007 и 30 в более ранних версиях Excel.

Хотя СУММПРОИЗВ работает с массивами, она не требует использования формулы массива Ctrl + Shift + Enter. Вы вводите формулу обычным способом, нажимая клавишу Enter.

Примечания:

  • Все массивы в формуле СУММПРОИЗВ должны иметь одинаковое количество строк и столбцов, иначе вы получите ошибку #ЗНАЧ!.
  • Если какой-либо аргумент массива содержит нечисловые значения, они будут рассматриваться как нули.
  • Если массив является логическим тестом, он дает значения ИСТИНА и ЛОЖЬ. В большинстве случаев вам нужно преобразовать их в 1 и 0 с помощью двойного отрицания (—). 
  • СУММПРОИЗВ не поддерживает подстановочные знаки * и ?.

Логика работы СУММПРОИЗВ в Excel

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

Предположим, у вас есть количество товаров в ячейках A2:A4, их цены в ячейках B2:B4, и вы хотите узнать их общую стоимость. Если бы вы делали школьный тест по математике, вы бы умножали количество на цену каждого предмета, а затем складывали промежуточные итоги. В Microsoft Excel вы можете получить сумму произведений с помощью одной формулы:

=СУММПРОИЗВ(B2:B5;C2:C5)

Следующий скриншот показывает ее в действии:

Вот что происходит «под капотом» с точки зрения математики:

  • Формула берет 1-е число из 1-го массива (цену) и умножает его на 1-е число из 2-го массива (количество), затем берет 2-е число из 1-го массива и умножает его на 2 е число из 2-го массива, и так далее.
  • Когда все элементы перемножаются, формула суммирует произведения и возвращает итоговую сумму.

Другими словами, наша формула СУММПРОИЗВ выполняет следующие математические операции:

=С2*B2 + С3*B3 + С4*B4 + С5*B5

Как использовать СУММПРОИЗВ в Excel с условиями – примеры формул

Только подумайте, сколько времени вы могли бы сэкономить, если бы ваша таблица содержала не 4 строки данных, а сотни или тысячи строк!

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

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

Сумма произведений с несколькими условиями

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

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

=СУММПРОИЗВ(—(C2:C10<B2:B10))

или

=СУММПРОИЗВ((C2:C10<B2:B10)*1)

Где C2:C10 — реальные продажи, а B2:B10 — запланированные продажи.

Но что, если у вас несколько условий? Допустим, вы хотите посчитать, сколько раз яблоки продавались хуже, чем планировалось. Решение состоит в том, чтобы добавить еще один критерий в формулу:

=СУММПРОИЗВ((C2:C10<B2:B10)*(A2:A10=»яблоки»))

Или вы можете использовать следующий синтаксис:

=СУММПРОИЗВ(—(C2:C10<B2:B10);—(A2:A10=»яблоки»))

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

Как работает формула СУММПРОИЗВ с одним условием

Для начала давайте разберем более простой случай. Нужно сравнить числа в двух столбцах построчно и сообщить, сколько раз числа колонки C меньше, чем B (то есть, план продаж не выполнен):

=СУММПРОИЗВ(—(C2:C10<B2:B10))

Если вы выделите часть (C2:C10<B2:B10) в строке формул и нажмете F9, чтобы просмотреть вычисленные значения, вы увидите следующую картину:

=СУММПРОИЗВ(—({ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ИСТИНА:ЛОЖЬ:ЛОЖЬ}))

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

Двойное отрицание (—) преобразует логические значения ИСТИНА и ЛОЖЬ в единицы и нули: {0:1:0:0:1:0:1:0:0}.

Другой способ преобразовать логические значения в числа — умножить массив на 1:

=СУММПРОИЗВ((C2:C10<B2:B10)*1)

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

Как работает формула СУММПРОИЗВ с несколькими условиями

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

Как вы помните, мы использовали следующие формулы, чтобы узнать, во сколько раз количество реальных продаж (столбец C) было меньше запланированных продаж (столбец B) яблок (столбец A):

=СУММПРОИЗВ((C2:C10<B2:B10)*(A2:A10=»яблоки»))

или:

=СУММПРОИЗВ(—(C2:C10<B2:B10);—(A2:A10=»яблоки»))

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

=СУММПРОИЗВ({0:1:0:0:1:0:1:0:0};{1:1:0:0:0:0:0:0:0})

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

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

В Excel 2003 и более ранних версиях, в которых ещё не было функций ЕСЛИ с условиями, одним из наиболее распространенных применений функции СУММПРОИЗВ было условное суммирование или подсчет ячеек с несколькими критериями. Начиная с Excel 2007, Microsoft представила серию функций, специально разработанных для таких задач, — СУММЕСЛИМН, СЧЁТЕСЛИМН и СРЗНАЧЕСЛИ.

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

Формула СУММПРОИЗВ с логикой И

Предположим, у вас есть следующий набор данных, где в столбце A перечислены регионы, в столбце B — товары, а в столбце C — данные о продажах:

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

В последних версиях Excel 2016, 2013, 2010 и 2007 задачу можно легко выполнить с помощью формул СУММЕСЛИМН, СЧЁТЕСЛИМН и СРЗНАЧЕСЛИ. Если вы не ищете легких путей или все еще используете Excel 2003 или более раннюю версию, вы можете получить желаемый результат с помощью СУММПРОИЗВ.

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

  • Чтобы подсчитать количество продаж яблок для Севера :

=СУММПРОИЗВ(—(A3:A13=F2); —(B3:B13=F3))

  • Суммируем продажияблок для Севера:

=СУММПРОИЗВ(—(A3:A13=F2); —(B3:B13=F3); C3:C13)

  • Чтобы найти средний размер продажи яблок на Севере:

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

=СУММПРОИЗВ(—(A3:A13=F2); —(B3:B13=F3); C3:C13)/СУММПРОИЗВ(—(A3:A13=F2); —(B3:B13=F3))

Формула СУММПРОИЗВ с логикой ИЛИ

Напомним, что логика ИЛИ означает, что выполняется хотя бы одно из нескольких условий. Чтобы суммировать или подсчитывать ячейки с помощью логики ИЛИ, используйте знак плюс (+) между массивами.

В формулах СУММПРОИЗВ Excel, а также в формулах массива символ плюс действует как оператор ИЛИ, который указывает Excel вернуть ИСТИНА, если ЛЮБОЕ из условий в данном выражении оценивается как ИСТИНА.

На следующем скриншоте показана такая формула в действии:

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

=СУММПРОИЗВ((B3:B13=F2)+(B3:B13=H2))

Она означает следующее: подсчитывать ячейки, если B3:B13=»апельсины» ИЛИ B3:B13=»лимоны».

Чтобы найти общие продажи апельсинов и лимонов , добавьте еще один аргумент, содержащий диапазон продаж :

=СУММПРОИЗВ((B3:B13=F2)+(B3:B13=H2); C3:C13)

Формула СУММПРОИЗВ с логикой И и ИЛИ

Во многих ситуациях вам может понадобиться условно подсчитать или суммировать ячейки с помощью логики И и ИЛИ одновременно. Даже в последних версиях Excel серия функций ЕСЛИ на это не способна.

Одним из возможных решений является объединение двух или более функций СУММЕСЛИМН+СУММЕСЛИМН или СЧЁТЕСЛИМН+СЧЁТЕСЛИМН .

Другой способ — использовать функцию СУММПРОИЗВ Excel, где:

  • Знак умножения (*) используется как оператор И.
  • Плюс (+) используется как оператор ИЛИ.

Для лучшего понимания, рассмотрим следующие примеры.

Чтобы сделать формулы немного более компактными, вы можете записать переменные в отдельные ячейки — «Регион» в F1 и «Товары» в F2 и H2 — и ссылаться на них в своей формуле:

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

=СУММПРОИЗВ((A3:A13=F2)*((B3:B13=F3)+(B3:B13=H3)))

Чтобы суммировать продажи яблок и лимонов в Северном регионе, возьмите приведенную выше формулу и добавьте массив Продажи с логикой «И»:

=СУММПРОИЗВ((A3:A13=F2)*((B3:B13=F3)+(B3:B13=H3))*C3:C13)

Формула СУММПРОИЗВ для средневзвешенного значения

 Еще одним распространенным использованием СУММПРОИЗВ в Excel является вычисление средневзвешенного значения, где каждому числу присваивается определенный вес.

Общая формула СУММПРОИЗВ для средневзвешенного значения выглядит следующим образом:

СУММПРОИЗВ( значения ; веса )/СУММ( веса )

Если предположить, что значения находятся в ячейках B2:B7, а веса — в ячейке C2:C7, формула средневзвешенного СУММПРОИЗВ будет выглядеть следующим образом:

=СУММПРОИЗВ(B2:B7;C2:C7)/СУММ(C2:C7)

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

СУММПРОИЗВ как альтернатива формулам массива

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

Какие преимущества это дает вам? По сути, вы сможете легко управлять своими формулами, не нажимая Ctrl + Shift + Enter каждый раз, когда вы вводите новую или редактируете существующую формулу массива.

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

=СУММПРОИЗВ(ДЛСТР( диапазон ))

или

=СУММПРОИЗВ(ДЛСТР(A2:A5))

Функция ДЛСТР в результате обработки диапазона ячеек возвращает массив значений – число символов в каждой из ячеек. Далее СУММПРОИЗВ складывает эти элементы массива и возвращает общее количество символов.

Excel СУММПРОИЗВ — примеры расширенных формул

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

Вот как мы это уже делали в более ранних публикациях на нашем сайте:

  • СУММПРОИЗВ для ВПР по нескольким критериям — как выполнять поиск по нескольким критериям и возвращать совпадающие числа. 
  • «Левый» ВПР для числовых значений – извлекаем из столбца слева от столбца поиска числовые значения и суммируем их.
  • Как подсчитать символы в Excel — формулы для подсчета всего или только определенных символов в диапазоне.
  • СУММПРОИЗВ для подсчета слов в Excel — формулы для получения общего количества слов в определенном диапазоне или подсчета только определенных слов.
  • Как подсчитать различные значения — узнайте, сколько разных значений появляется в диапазоне (уникальных плюс первые повторяющиеся вхождения).
  • Подсчет дубликатов и уникальных значений — формула СУММПРОИЗВ / СЧЁТЕСЛИ для подсчета дубликатов и уникальных значений в столбце или между двумя столбцами.
  • Извлечение только чисел из буквенно-цифровых строк — СУММПРОИЗВ в сочетании с 7 другими функциями извлекает все числа из строки число-текст-число.

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

Функция СУММПРОИВ ВОЗВРАЩАЕТ сумму продуктов соответствующих диапазонов или массивов. По умолчанию операция умножения, но возможна с добавлением, вычитанием и делением.

В этом примере мы используем СУММПРОИВ для возврата общего объема продаж для данного элемента и его размера:

Пример использования функции СУММПРОИВ ДЛЯ возврата общего объема продаж при условии, что для каждого товара задавались наименование, размер и отдельные значения продаж.

SumPRODUCT соответствует всем экземплярам элемента Y/Size M и суммирует их, поэтому в данном примере «21 плюс 41» равен 62.

Синтаксис

Чтобы использовать операцию по умолчанию (умножение):

=СУММПРОИВ(массив1;[массив2];[массив3];…)

Аргументы функции СУММПРОИЗВ описаны ниже.

Аргумент

Описание

массив1   

Обязательно

Первый массив, компоненты которого нужно перемножить, а затем сложить результаты.

[массив2], [массив3],…    

Необязательно

От 2 до 255 массивов, компоненты которых нужно перемножить, а затем сложить результаты.

Выполнение других арифметических операций

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

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

Примечания

  • Аргументы, которые являются массивами, должны иметь одинаковые размерности. В противном случае функция СУММПРОИЗВ возвращает значение ошибки #ЗНАЧ!. Например, =СУММПРОИВ(C2:C10;D2:D5) возвращает ошибку, так как диапазоны не одного размера.

  • В функции СУММПРОИВТ ненумерические записи массива обрабатывают их так, как если бы они были нулями.

  • Для лучшей производительности не следует использовать суммпроив с полными ссылками на столбцы. Рассмотрим функцию =СУММПРОИВ(A:A;B:B), чтобы умножить 1 048 576 ячеек в столбце A на 1 048 576 ячеек в столбце B перед их добавлением. 

Пример 1

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

Чтобы создать формулу на примере выше, введите =СУММПРОИВ(C2:C5;D2:D5) и нажмитеввод . Каждая ячейка в столбце C умножается на соответствующую ячейку в той же строке столбца D, и результаты сбавляются. Общая сумма продуктов составляет 78,97 долларов США.

Чтобы ввести более длинную формулу, которая дает такой же результат, введите =C2*D2+C3*D3+C4*D4+C5*D5 и нажмите ввод . После нажатия ввод результат будет таким же: 78,97 долларов США. Ячейка C2 умножается на D2, а ее результат добавляется к результату ячейки C3, умноженной на ячейку D3 и так далее.

Пример 2

В следующем примере sumPRODUCT возвращает суммарные чистую сумму продаж по агенту продаж, у которых есть как общие продажи, так и расходы по агенту. В этом случае мы используем таблицу Excel, в которой используются структурированные ссылки вместо стандартных Excel диапазонов. Здесь вы увидите, что диапазоны «Продажи», «Расходы» и «Агент» имеют ссылку по имени.

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

Формула: =СУММПРОИМ(((Таблица1[Продажи])+(Таблица1[Расходы]))*(Таблица1[Агент]=B8)) и возвращает сумму всех продаж и расходов агента, указанных в ячейке B8.

Пример 3

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

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

Вот формула: =СУММПРОИВ((B2:B9=B12)*(C2:C9=C12)*D2:D9). Сначала оно умножает количество вхождений восточного на количество совпадающих вишней. Наконец, она суммирует значения соответствующих строк в столбце Продажи. Чтобы узнать, Excel вычисляет формулу, выйдите из ячейки формулы, а затем перейдите в > Вычислить формулу >.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

См. также

Выполнение условных вычислений в диапазонах ячеек

Сумм на основе нескольких критериев с помощью СУММЕ ЕСЛИМЕСЯ

Подсчет на основе нескольких критериев с помощью функции СЧЁТЕФС

Среднее значение на основе нескольких критериев с помощью функции ССВЕIFS

Нужна дополнительная помощь?


Функция

СУММПРОИЗВ()

, английская версия SUMPRODUCT(),

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

Существует несколько вариантов применения функции

СУММПРОИЗВ()

:

  • нахождение суммы произведений элементов списка (массива);
  • суммирование и подсчет значений, удовлетворяющих определенным критериям;
  • замена

    формул массива

    (в некоторых случаях).


Нахождение суммы произведений элементов массивов

В этом разделе показан синтаксис функции

СУММПРОИЗВ()

и раскрыт ее потенциал для других применений.

Пусть имеется 2 диапазона чисел

A3:A6

и

B3:B6

, содержащие соответственно 2

массива чисел

: {4:8:6:1} и {7:6:7:5}. Записав формулу

=СУММПРОИЗВ(A3:A6;B3:B6)

, получим 123. Результат получен поэлементным перемножением всех элементов двух массивов, а затем сложением полученных произведений. То есть были выполнены следующие арифметические действия: 4*7 + 8*6 + 6*7 + 1*5= 123

Таким образом, можно найти сумму произведений 3-х, 4-х и т.д. массивов.

Аргументы, которые являются массивами, должны иметь одинаковые размерности (в нашем случае это массивы по 4 элемента). В противном случае функция

СУММПРОИЗВ()

возвращает значение ошибки #ЗНАЧ!.

В формуле

=СУММПРОИЗВ(A3:A6;B3:B6)

функция

СУММПРОИЗВ()

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

Что произойдет если указать только 1 массив, т.е.

=СУММПРОИЗВ(A3:A6)

? Тогда функция

СУММПРОИЗВ()

вернет сумму элементов, т.е. будет эквивалентна функции

СУММ()

:

=СУММ(A3:A6)

.

Синтаксис функции

СУММПРОИЗВ()

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


  • =СУММПРОИЗВ(A3:A6*2)

    , получим сумму произведений =38 (каждый элемент массива из

    A3:A6

    был умножен на 2, затем все произведения просуммированы);

  • =СУММПРОИЗВ(A3:A6*B3:B6)

    , получим результат суммы произведений – 123 (все элементы массивов были попарно перемножены, а затем сложены, т.е. A3*B3+ A4*B4+ A5*B5+ A6*B6), т.е. эта запись эквивалента формула

    =СУММПРОИЗВ(A3:A6;B3:B6)

    ;

  • =СУММПРОИЗВ(A3:A6+B3:B6)

    , получим сумму элементов из двух диапазонов;

  • =СУММПРОИЗВ(A3:A6/B3:B6

    ), получим сумму попарных отношений всех элементов,  т.е. 4/7 + 8/6 + 6/7 + 1/5= 2,9619

Аналогичные вычисления можно выполнить и с функцией

СУММ()

, только для этого нужно ее ввести как

формулу массива

, т.е. после ввода функции в ячейку вместо

ENTER

нажать

CTRL+SHIFT+ENTER

:

=СУММ(A3:A6/B3:B6)

Прелесть функции

СУММПРОИЗВ()

в том, что после ввода функции в ячейку можно просто нажать

ENTER

, что снимает некий психологический барьер перед использованием

формул массива

.

Оказывается, что в качестве аргумента этой функции можно указать не только произведение массивов (

A3:A6*B3:B6

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


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

Попробуем подсчитать число значений больших 2 в диапазоне

A3:A6

, содержащий значения 4, 8, 6, 1.

Если мы запишем формулу

=СУММПРОИЗВ(A3:A6>2)

, то получим результат 0. Выделив в

Строке формул

A3:A6>2

и нажав клавишу

F9

, получим массив {ИСТИНА: ИСТИНА: ИСТИНА: ЛОЖЬ}, который говорит, что мы движемся в правильном направлении: в диапазоне

A3:A6

больше 2 только первые 3 значения. Хотя значению ИСТИНА соответствует 1, а ЛОЖЬ – 0, мы не получим 3, т.к. для перевода значений ИСТИНА/ЛОЖЬ в числовую форму требуется применить к ним арифметическую операцию. Для этого можно, например, применить операцию двойного отрицания (—), что позволит привести массив в числовую форму {1:1:1:0}.

Итак, задача подсчета значений больше 2 решается следующим образом:

=СУММПРОИЗВ(—(A3:A6>2))

Вместо двойного отрицания можно использовать другие формулы:

=СУММПРОИЗВ(1*(A3:A6>2))

или

=СУММПРОИЗВ(0+(A3:A6>2))

или даже так

=СУММПРОИЗВ((A3:A6>2)^1)

.

Запись >2 является критерием, причем можно указать любые операции сравнения (<; <=; >=; =).

Критерии можно указывать в форме ссылки:

=СУММПРОИЗВ(—(A3:A6>G8))

– ячейка

G

8

должна содержать число 2.

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

=СУММПРОИЗВ(—(B3:B6=»яблоки»))

– вернет количество ячеек, содержащие слово

яблоки

(подробнее, например, в статье

Подсчет значений с множественными критериями (Часть 1. Условие И))

.

Функцию

СУММПРОИЗВ()

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

  • Условие

    ИЛИ

    . Например, подсчитать ячеек содержащих значение

    яблоки

    ИЛИ

    груши

    =СУММПРОИЗВ((B3:B6=»яблоки»)+

    (B3:B6=»груши»)

    )

    ;
  • Условие

    И

    . Например, подсчитать количество значений больше 2 и меньше 5:

    =СУММПРОИЗВ((A3:A6>2)*

    (A3:A6<5)

    )
  • Условие

    И

    . Например, найти сумму Чисел больше 2 и меньше 5:

    =СУММПРОИЗВ((A3:A6>2)*

    (A3:A6<5)*(

    A3:A6

    )

    )

В

файле примера

приведены решения подобных задач.


СУММПРОИЗВ() – как формула массива

В ряде случаев (когда нужно подсчитать или сложить значения, удовлетворяющие определенным критериям) можно заменить использование

формул массива

функцией

СУММПРОИЗВ()

, например:


  • =СУММПРОИЗВ(—ЕПУСТО(D2:D23))

    подсчет

    пустых ячеек

    в диапазоне;


  • =СУММПРОИЗВ(НАИБОЛЬШИЙ(A:A;{1;2;3}))

    сумма 3-х наибольших значений

    ;


  • =СУММПРОИЗВ((A3:A6>СРЗНАЧ(A3:A6))*(A3:A6))

    сумма значений, которые больше

    среднего

    .


Совет

: Дополнительную информацию об этой функции можно

подчерпнуть здесь (английский язык).

Понравилась статья? Поделить с друзьями:
  • Формула суммпроизв в excel примеры несколько условий
  • Формула суммирования с нескольких листов в excel
  • Формула суммирования по строкам в excel
  • Формула суммирования значений ячеек в excel
  • Формула суммирования в excel по ячейкам