Почему SUMIF с критериями диапазона не работает должным образом? - PullRequest
0 голосов
/ 11 мая 2018

У меня есть 3 столбца A, B, C. Теперь я хочу получить сумму для каждой ячейки Ai, где Bi

Пример:

A    B    C
-----------
2    1    3
4    5    4
3    2    7
6    6    6
-----------

Expected result = A1 + A3 = 2 + 3 = 5

Я попробовал следующую формулу: =SUMIF(B1:B4,"<C1:C4",A1:A4), но она дает мне 0!

Кто-нибудь может помочь?

Ответы [ 2 ]

0 голосов
/ 11 мая 2018

Функция SUMIF принимает 3 аргумента: range, criteria и sum_range.

Если вы проверите документацию , вы заметите, что пока range и sum_range оба принимают «диапазон ячеек» (то есть несколько значений), criteria - это одно значение , то же самое сравнивается со всеми ячейками в range.Если вы do вставите Range или Array, то он будет использовать только элемент first .
{EDIT} Если только не вся функцияявляется частью вычисления массива, в этом случае вы получите массив SUMIF для каждого элемента в массиве - например, {=SUM(SUMIF(A1:A4,{1,2}))} совпадает с {=SUM({SUMIF(A1:A4,1), SUMIF(A1:A4,2)})}

Это означает, что выможно сделать =SUM(B1:B4,"<" & MIN(C1:C4),A1:A4), чтобы сложить значения в столбце A, где значение в столбце B меньше, чем all значения в столбце C, но для сравнения строка за строкой вам понадобится массивФормула или SUMPRODUCT, вот так:

=SUMPRODUCT(A1:A4*--(B1:B4<C1:C4))
0 голосов
/ 11 мая 2018

Вы можете использовать эту формулу массива:

{=SUM(IF(B1:B4<C1:C4,A1:A4))}

Вам нужно будет применить его с помощью Ctrl + Shift + Введите .

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...