INDEX-MATCH和SUMPRODUCT

我有一个用户列表和他们关联的安全组,从Active Directory生成。 它看起来像这样:

Username Security Group Chris Group A Chris Group B Chris Group C Dave Group D Dave Group A Dave Group E 

我有另一个用户名列表,我需要交叉引用来确定用户是否是一个或多个特定安全组的一部分。 安全组的列表是dynamic的,将根据其他标准进行更改,所以我只想在我的支票中引用一个已命名的范围。

我现在使用的等式如下所示:

 =IF(INDEX('Users in Security Groups'!C:C, MATCH('Cross-Reference'!A2, 'Users in Security Groups'!B:B, 0))=Rng_SecGrp, "YES", "NO") 

由于INDEX-MATCH在第一个值处停止,所以对于我认为属于我所关心的这些安全组的用户名,我得到了“NO”。 我想可能是数组公式和/或SUMPRODUCT的答案,但两者都在我的舒适区之外,我没有find正确的公式。

任何帮助表示赞赏! 谢谢!

使用COUNTIFS()不是INDEX(,MATCH()):

 =IF(SUM(COUNTIFS('Users in Security Groups'!C:C,Rng_SecGrp,'Users in Security Groups'!B:B,'Cross-Reference'!A2)),"YES","NO") 

这可能需要使用Ctrl-Shift-Enter进行数组input。