Поиск…


Вступление

Функция SUMPRODUCT умножает соответствующие компоненты в заданных массивах и возвращает сумму этих продуктов

Синтаксис

  • SUMPRODUCT (array1, [array2], [array3], ...)

замечания

  • Аргументы массива должны иметь одинаковые размеры. Если они этого не сделают, SUMPRODUCT вернет # ВАЛЮТ! значение ошибки.
  • SUMPRODUCT обрабатывает записи массива, которые не являются числовыми, как если бы они были нулями.

Использование SUMPRODUCT с числовыми диапазонами

Рассмотрим диапазоны A1:A3 и B1:B3 с одинаковыми размерами и только номерами, как показано ниже

введите описание изображения здесь

=SUMPRODUCT(A1:A3,B1:B3)

Это будет проходить через диапазоны, беря произведение значений в одной строке и суммируя их, возвращая 32 в этом примере.

A1*B1 = 4
A2*B2 = 10
A3*B3 = 18

Использование SUMPRODUCT с булевыми массивами

Рассмотрим следующие диапазоны A1:A3 и B1:B3 как B1:B3 ниже

введите описание изображения здесь

=SUMPRODUCT(--(A1:A3="c"),B1:B3)

Сначала это будет обрабатываться (A1:A3="c") в следующий массив

A1="c" = FALSE
A2="c" = FALSE
A3="c" = TRUE

Затем примените оператор -- который преобразует TRUE и FALSE в 1 и 0 соответственно. Таким образом, массив становится

--FALSE = 0
--FALSE = 0
--TRUE  = 1

Тогда формула SUMPRODUCT завершается так же, как в простом числовом случае. Возвращение 6 в этом примере

0*4 = 0
0*5 = 0
1*6 = 6

Примечание: это эквивалент функции SUMIF



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow