使用单元格区域作为 SUMIF 中的条件

使用单元格区域作为 SUMIF 中的条件

例如,我有以下公式:

=SUMIF(G1:G25,E1,H1:H25)+SUMIF(G1:G25,E2,H1:H25)+SUMIF(G1:G25,E3,H1:H25)

它是 3 个 SUMIF,均使用相同的条件和求和范围,条件使用同一范围内的 3 个单元格。

我希望能够将该公式浓缩为如下所示的形式:

=SUMIF(G1:G25,E1:E3,H1:H25)

其中条件是单元格范围。我尝试过:

{=SUMIF(G1:G25,E1:E3,H1:H25)}

&

=SUMIF(G1:G25,{E1:E3},H1:H25)

&

=SUM(SUMIF(G1:G25,{E1:E3},H1:H25))

有没有办法实现这个?甚至可能用SUMPRODUCT

E1:E3此外,如果可能的话,我想使用命名范围来代替范围,如果不行的话,仅仅压缩多个 SUMIF 的方法就可以了。

答案1

我想建议的最小可能的公式是:

=SUMPRODUCT(ISNUMBER(MATCH(A1:A7,A9:A11,0))*B1:B7)

在此处输入图片描述

您的公式应按如下所示重写:

=SUMPRODUCT(ISNUMBER(MATCH(G1:G25,E1:E3,0))*H1:H25)

您可以根据需要调整公式中的单元格引用。

答案2

您可以使用SUMPRODUCT(SUMIFS())

=SUMPRODUCT(SUMIF(A:A,D1:D3,B:B))

SUMPRODUCT 强制迭代条件。其他条件可以是完整的列,而不会造成损害。它基本上是执行 3 个 SUMIF() 并将结果相加。

仅供参考:您也可以使用 SUM:=SUM(SUMIF(A:A,D1:D3,B:B))只要您使用 Ctrl-Shift-Enter 而不是 Enter 来输入数组。

在此处输入图片描述

相关内容