在Excel中将多个值传递给SUMIFS函数

在Excel中将多个值传递给SUMIFS函数,excel,sumifs,Excel,Sumifs,我有两列A,B。,我想得到A的和,如下所示 =SUMIFS( sheet1!$A:$A, sheet1!$B:$B, ("AB", "BC", "CD") ) 但这个公式不起作用。 请建议我。如果我猜对了你的意图,你应该: =SUMIFS(sheet1!$A:$A,Sheet1!$B:$B,"AB")+SUMIFS(sheet1!$A:$A,Sheet1!$B:$B,"BC")+SUMIFS(sheet1!$A:$A,Sheet1!$B:$B,"CD

我有两列A,B。,我想得到A的和,如下所示

=SUMIFS(
       sheet1!$A:$A, 
       sheet1!$B:$B, ("AB", "BC", "CD")
       )
但这个公式不起作用。
请建议我。

如果我猜对了你的意图,你应该:

=SUMIFS(sheet1!$A:$A,Sheet1!$B:$B,"AB")+SUMIFS(sheet1!$A:$A,Sheet1!$B:$B,"BC")+SUMIFS(sheet1!$A:$A,Sheet1!$B:$B,"CD")

尝试使用以下公式:

=SUMPRODUCT((sheet1!$B:$B={"AB","BC","CD"})*(sheet1!$A:$A))
或者,也可以使用数组公式:


在公式栏中输入公式,然后按CTRL+SHIFT+enter对其求值……

添加两个辅助列:在D:D中,您有有效值的列表。在C:C中,你有一个这样的变化公式;到在F1中,您的总和如下所示:

=SUMIFS($A:$A,$C:$C,FALSE)
现在,您可以在D:D列中添加任意数量的有效条件。

您可以使用SUMIFS为每个条件返回一个数组,然后求和以求和,即

=SUMSUMIFSsheet1$A:$A,第1张$B:$B,{AB,BC,CD}

这种方式保持了SUMIFS的速度和效率,无需重复

如果您的条件值在一个单元格范围内,您可以简单地引用该范围,但使用SUMPRODUCT可以避免数组条目

=SUMPRODUCTSUMIFSsheet1$A:$A,第1张$B:$B,Z2:Z4

其中Z2:Z4包含标准


注意:在这两个SUMIF中,是否所有的重载-SUM/SUMPRODUCT仅用于对结果数组求和

您想做什么?若要将$A:$A中的值求和到$B:$B等于这三个值之一的行中,请选择“是”。它不是这些值中的一个,但可以与这些值中的一个或多个匹配。是的@Taosique,如果我们单独添加forumals,我的公式会变得非常大,并且会很混乱,因为公式中还有20行。我在看是否有其他选择。是的,有。但它要求您添加两个helper列。有兴趣吗?有没有什么公式我们不需要重复相同的公式。我会尝试第二个公式。谢谢。我已经用新公式更新了我的答案。看看第一个公式。这个公式有效。我们需要做的唯一一件事是我们需要替换;与,:这取决于本地设置,更新答案中的第一个公式对我更具吸引力
=SUMIFS($A:$A,$C:$C,FALSE)