Как использовать формулу SUMIF в диапазоне неровных сумм - PullRequest
0 голосов
/ 21 февраля 2020

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

Один из способов сделать это - добавить дополнительный столбец (я назвал его select (v)), который выполняет условную формулу IF для выбора значений для суммирования. Затем я могу просто использовать этот дополнительный столбец в качестве sum_range в формуле SUMIF.

enter image description here

Если предположить, что эти данные начинаются в ячейке A1, моя формула для выбора (v) будет

=IF(ISBLANK(C2),B2,C2)

и тогда моя формула для промежуточного итога будет

=SUMIF($A:$A,A2,$D:$D)

Есть ли способ выполнить sh этот промежуточный итог без использования дополнительного столбца select (v)?

Ответы [ 2 ]

2 голосов
/ 21 февраля 2020

Быстрый и Грязный SUMPRODUCT:

=SUMPRODUCT(((($C$2:$C$7<>"")*$C$2:$C$7)+(($C$2:$C$7="")*$B$2:$B$7))*($A$2:$A$7=A2))

enter image description here


Или если есть Dynami c Формула массива FILTER:

=SUM(FILTER(CHOOSE(($C$2:$C$7="")+1,$C$2:$C$7,$B$2:$B$7),$A$2:$A$7=A2))

enter image description here

2 голосов
/ 21 февраля 2020

Возможно следующее:

=SUMIFS(B:B,A:A,A2,C:C,"")+SUMIFS(C:C,A:A,A2)

enter image description here

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