0

目前可以很好地检查帐户和国家/地区 ID 是否匹配,然后获取金额和总和。现在我有另一个帐户,我想在 B 列中将其留空,因为它包含所有国家/地区 ID。如何让 sumproduct 忽略条件是该字段为空,还是接受所有内容正确?

请参阅下面Justyna MK在我之前的问题中提出的解决方案。

在此处输入图像描述

我尝试使用 NOT(ISBLANK( 或使用 IF(ISBLANK(B4),但我不知道如果它确实为空白它应该返回什么。

期望的结果: 如果例如列 B4 为空而不是 8 作为值,我希望总和为 91。对于 B5 也是如此,它应该是 172 而不是 155。

4

1 回答 1

0

我会尝试编写一个非易失性公式,可能像这样:

在此处输入图像描述

中的公式C2

=SUM(IF(B2="",SUMIF(M$2:M$13,A2;O$2:O$13),IF(ISNUMBER(B2),SUMIFS(O$2:O$13,M$2:M$13,A2;N$2:N$13;B2),SUMIFS(O$2:O$13,M$2:M$13;A2,N$2:N$13,CHOOSE(MATCH(B2,{"EUROPE","BENELUX"},0),Europe,Benelux)))))

输入为CSE(顺便说一句,不需要SUMPRODUCT)。

我不知道你为什么还要尽量避免IF,因为它实际上可以让用户清楚地了解正在发生的事情,并且避免了不必要的繁重计算。


编辑:特此还有一个场景,您将拥有第三个名为 ranged 的​​持有所有国家/地区代码(目前与“EUROPE”相同):

在此处输入图像描述

中的公式C2

=SUM(IF(ISNUMBER(B2),SUMIFS(O$2:O$13,M$2:M$13,A2;N$2:N$13,B2),SUMIFS(O$2:O$13,M$2:M$13,A2,N$2:N$13,CHOOSE(MATCH(B2,{"EUROPE","BENELUX",0},0),Europe,Benelux,ALL))))

也输入为CSE

这将消除第一次检查空 withIF和第一个SUMIF. 相反,它将空单元格(返回 value 0)与提供的列表匹配,并选择适当的命名范围。

于 2020-01-13T08:50:54.910 回答