Функция в excel суммпроизв Excelka.ru - все про Ексель

Функция в excel суммпроизв

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

Добрый день!

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

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

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

= СУММПРОИЗВ(ваш_массив1;[ваш_массив2];[ваш_массив3];…и т.д.), где

  • ваш_массив1 – является обязательным критерием, в нем указываются те компоненты которые необходимо перемножить, а после результаты будут сложены;
  • ваш_массив2, ваш_массив3…. и т.д. – является необязательным критерием, но если количество ваших массивов, которые нужно перемножить и сложить полученные результаты, от 2 до 255 тогда они будут обязательны.

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

Возьмем таблицу по продажам фруктов и произведем вычисления с помощью функции СУММПРОИЗВ. Как видно для вычислений нужного нам значения была написана формула: =СУММПРОИЗВ((B2:B11=$H$5)*(D2:D11=$H$6);F2:F11), работу которой рассмотрим поподробнее. Вычисления «B2:B11=$H$5» означают что в массиве данных нужно выбрать всё с критерием «$H$5» или «Яковлев С.И.». Следующим действием «D2:D11=$H$6» мы отбираем в массиве данные со значением «$H$6» или «Яблоко». При совпадении значений в этих диапазонах происходит суммирование в массиве «F2:F11» и мы получаем результат.

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

В этом примере задачку можно решить и другими способами, с помощью других функций или цепочки вычислений, но часто это всё лишнее и намного проще написать формулу один раз и получить нужный результат. Теперь мы немного усложним наше задание и добавим еще условия в нашу задачку, такие как дата, нам вдруг стало интересно, сколько же яблок продал наш менеджер за последние две недели марта. Этот пример рассмотрим еще и потому что могут быть изменения в критериях товара, сейчас у нас написано «Яблоко», а ведь можно приписать сорт и всё изменится «Яблоко «Голд»» и тогда наша формула не сработает. Для решения нашей задачи нам нужна формула следующего вида: =СУММПРОИЗВ((B2:B11=$H$5)*(D2:D11=$H$6)*(E2:E11>=$H$9)*(E2:E11 =$H$9) и (E2:E11 =» (больше и равно) и «

«Бедность и богатство – суть слова для обозначения нужды и изобилия. Следовательно, кто нуждается, тот не богат, а кто не нуждается, тот не беден.
»
Демокрит

Функция СУММПРОИЗВ() — Сложение и подсчет с множественными условиями в MS EXCEL

Функция СУММПРОИЗВ() , английская версия 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
Читать еще:  Знак в формуле excel

Аналогичные вычисления можно выполнить и с функцией СУММ() , только для этого нужно ее ввести как формулу массива, т.е. после ввода функции в ячейку вместо 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)) – ячейка G8 должна содержать число 2.

Критерии можно применять и к текстовым значениям, например, =СУММПРОИЗВ(—(B3:B6=»яблоки»)) – вернет количество ячеек, содержащие слово яблоки (подробнее, например, в статье Подсчет значений с множественными критериями (Часть 1. Условие И)).

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

  • Условие ИЛИ. Например, подсчитать ячеек содержащих значение яблоки ИЛИ груши =СУММПРОИЗВ((B3:B6=»яблоки»)+ (B3:B6=»груши») ) ;
  • Условие И. Например, подсчитать количество значений больше 2 и меньше 5: =СУММПРОИЗВ((A3:A6>2)* (A3:A6 2)* (A3:A6 СРЗНАЧ(A3:A6))*(A3:A6)) сумма значений, которые больше среднего.

СУММПРОИЗВ (функция СУММПРОИЗВ)

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

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

СУММПРОИЗВ соответствует всем экземплярам элемента Y/size M и суммирует их, поэтому для этого примера 21 плюс 41 равняется 62.

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

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

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

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

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

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

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

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

Примечания

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

СУММПРОИЗВ обрабатывает нечисловые элементы массива так, как если бы они были нулевыми.

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

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

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

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

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

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

Читать еще:  Как забить формулу в excel проценты

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

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

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

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

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

=СУММПРОИЗВ( Массив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) спокойно считает по данным даже из неоткрытой книги!

Расчет суммы произведений в Excel

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

Вычисление суммы произведения

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

Способ 1: использование математической формулы

Большинству пользователей известно, что в Экселе можно выполнить значительное количество математических действий просто поставив знак «=» в пустой ячейке, а далее записав выражение по правилам математики. Этот способ можно использовать и для нахождения суммы произведений. Программа, согласно математическим правилам, сразу подсчитывает произведения, а уже потом складывает их в общую сумму.

  1. Устанавливаем знак «равно» (=) в ячейке, в которой будет выводиться результат производимых вычислений. Записываем туда выражение суммы произведений по следующему шаблону:

Например, таким способом можно рассчитать выражение:

Способ 2: работа со ссылками

Вместо конкретных чисел в этой формуле можно указывать ссылки на ячейки, в которых они расположены. Ссылки можно вписать вручную, но удобнее это делать, выделив после знака «=», «+» или «*» соответствующую ячейку, в которой содержится число.

Читать еще:  В excel функция мода

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

  • Затем, чтобы произвести подсчет, кликаем по кнопке Enter. Результат вычисления будет выведен на экран.
  • Конечно, данный вид вычисления довольно простой и интуитивно понятный, но в случае, если в таблице очень много значений, которые нужно перемножить, а потом сложить, этот способ может занять очень много времени.

    Способ 3: использование функции СУММПРОИЗВ

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

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

    Синтаксис данной функции имеет такой вид:

    Аргументами этого оператора являются диапазоны данных. При этом они сгруппированы по группам множителей. То есть, если отталкиваться от шаблона, о котором мы говорили выше (a1*b1*…+a2*b2*…+a3*b3*…+…), то в первом массиве располагаются множители группы a, во втором – группы b, в третьем – группы c и т.д. Данные диапазоны обязательно должны быть однотипными и равными по длине. Располагаться они могут, как вертикально, так и горизонтально. Всего данный оператор может работать с количеством аргументов от 2 до 255.

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

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

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

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

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

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

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

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

    После того, как все данные внесены, жмем кнопку «OK».

    Приложение производит вычисление. В расчет берутся только строчки, в которых присутствует имя «Парфенов Д.Ф», то есть то, что нам и нужно. Результат вычислений отображается в предварительно выделенной ячейке. Но результат равен нулю. Это связано с тем, что формула в том виде, в котором она существует сейчас, работает некорректно. Нам нужно её немного преобразовать.

  • Для того чтобы преобразовать формулу, выделяем ячейку с итоговым значением. Выполняем действия в строке формул. Аргумент с условием берем в скобки, а между ним и другими аргументами точку с запятой меняем на знак умножения (*). Жмем на кнопку Enter. Программа производит подсчет и на этот раз выдает уже корректное значение. Мы получили общую сумму заработной платы за три месяца, которая причитается сотруднику предприятия Парфенову Д. Ф.
  • Таким же образом можно применять условия не только к тексту, но и к числам с датами, добавляя знаки условия « », «=», « ».

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

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Ссылка на основную публикацию