Excel:匹配数组中的值并从同一行返回单元格值

我有这样的forms在Excel工作表1中的一些数据:

person1 person2 person3 score dave sarah jill 4 brandon hank 3 

在工作表2中,我有一列按字母顺序列出的人,如下所示:

 person score alex brandon dave hank jill sarah 

我想从工作表1中获得每个人的分数(对于那些缺席的人来说有空白):

 person score alex brandon 3 dave 4 hank 3 jill 4 sarah 4 

我研究过查找,匹配,查找,查找等function,但似乎我需要更复杂的东西。

假设:

  1. 每个人只能在源数据中出现一次
  2. 源数据占用范围A1:D3(在第1行中有标题)
  3. G2中您想要返回结果的第一个人的姓名

那么这个公式在H2中:

= IF(COUNTIF($ A $ 2:$ C $ 3 G2),INDEX($ d $ 2:$ d $ 3 SUMPRODUCT(($ A $ 2:$ C $ 3 = G2)*(ROW($ A $ 2:$ C $ 3 )-MIN(ROW($ A $ 2:$ C $ 3))+ 1))), “”)

向下复制,以获得H3,H4等名称的相同结果

问候