使用SUMPRODUCT将一个表列与另一列进行比较

时间:2018-10-26 16:31:42

标签: excel excel-formula

我正在寻找一个公式,该公式计算在 Data [Country] 列中与在单独的表列 Included [Countries] 中确定的列表匹配的条目。

我尝试过使用SUMPRODUCT函数,如下所示:

= SUMPRODUCT(--(Data[Country]=Included[Countries]))

但这会返回错误。如果我将 Included [Countries] 替换为组成部分的数组,例如=SUMPRODUCT(--(Data[Country]={"EN","DE"})),此方法有效,但是我想避免使用编码值。

我也尝试过COUNTIFS(Data[Country], Included[Countries]),但这没有用。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

=SUMPRODUCT(--(Data[Country]=Included[Countries]))不起作用,因为SUMPRODUCT期望两个范围的大小相同,因为它将逐行迭代两个范围。如果它们的大小不同,将返回错误。

=SUMPRODUCT(--(Data[Country]=Included[Countries]))之所以有效,是因为您使用的是数组而不是范围。

=COUNTIFS(Data[Country], Included[Countries])不会自己进行迭代,因此只会返回第一个单元格计数。

要使其迭代,请在SUMPRODUCT()中使用COUNTIFS():

=SUMPRODUCT(COUNTIFS(Data[Country], Included[Countries]))

因此,您已经接近解决方案,只需要了解如何结合这两种方法即可。