来自单元格引用的多个条件的COUNTIFS(尝试使用数组)

时间:2017-05-17 07:23:01

标签: arrays excel formula excel-2013

我第一次问了一个问题,所以请耐心等待。

我有一个公式(在Excel 2013中):

=SUM(COUNTIFS(Data[Location],{76,876},Data[Difference],"<=2",Data[Year],2017))  

它计算在两周内由特定位置完成的任务,由该位置的两个不同的团队完成,标识为76和876,所有数据都存储在一个名为Data的表中。它工作正常。

但是,我希望能够与许多不同的团队一起完成这项工作,所有团队都由另一个范围内的数字识别。如果我只是希望每个地点都有一个团队,我可以

=SUM(COUNTIFS(Data[Location],A2,Data[Difference],"<=2",Data[Year],2017))  

但是我不能(据我所知)?要求它查找带有单元格引用的多个位置,例如{A2,B2}。

这有什么办法吗?或者我应该在我的数据表中添加一个帮助列,它将链接76和876(以及同一位置的所有其他团队)?我很担心这样做,因为那个表中有很多条目,还有很多帮助列;每一个新配方都会增加额外的计算时间,而且它已经足够重,以至于我可以在计算这本书的时候舒服地制作一杯茶。

非常感谢。

次要编辑:我意识到在第二行代码中,我不需要SUM函数,copypaste错误,抱歉

1 个答案:

答案 0 :(得分:1)

{76,876}这样的数组文字只能使用不使用引用的文字值,这是对的。但如果A2包含76B2包含876,则A2:B2将与{76,876}相同(如果此引用位于数组上下文中)。

因此,在您的情况下,A2包含76B2包含876,您可以使用:

{=SUM(COUNTIFS(Data[Location],A2:B2,Data[Difference],"<=2",Data[Year],2017))}

这是一个数组公式。将其输入单元格而不使用大括号,然后按[Ctrl] + [Shift] + [Enter]进行确认。然后大括号自动出现。

或者您可以使用SUMPRODUCT,因为SUMPRODUCT将在数组上下文中包含所有参数,而无需明确按[Ctrl] + [Shift] + [Enter]进行确认。

=SUMPRODUCT(COUNTIFS(Data[Location],A2:B2,Data[Difference],"<=2",Data[Year],2017))