考虑我有下表(未排序):
姓名 | ID | 帐户 |
---|---|---|
约翰·多伊 | 1 | 1234 |
约翰·多伊 | 1 | 6524 |
无名氏 | 2 | 6346 |
无名氏 | 2 | 1241 |
无名氏 | 2 | 3634 |
还有一个是这样的:
姓名 | 帐户 1 | 帐户 2 | 帐户 3 |
---|---|---|---|
约翰·多伊 | |||
无名氏 |
我需要从第一个表中找到第二个表的所有匹配的“帐户”,最终结果如下:
姓名 | 帐户 1 | 帐户 2 | 帐户 3 |
---|---|---|---|
约翰·多伊 | 1234 | 6524 | 无 |
无名氏 | 6346 | 1241 | 3634 |
帐号顺序并不重要(即与表 1 中的顺序相同或以某种方式排序)。没有宏可以做到这一点吗?我使用 VLOOKUP 或 INDEX/MATCH 组合找到第一个匹配项没有问题,如下所示:
=INDEX($'Table 1'.A:C; MATCH(A5;$'Table 1'.A:A;0); 3; 1)
但完全不知道如何获得“下一场比赛”。
答案1
现在,有一些解决方法,您可以尝试从具有 ID 的表中创建两个表,因此创建一个 ID=1 的表和第二个 ID=2 的表,然后对每个表进行垂直搜索,理论上可以做到或多或少,祝你好运
答案2
=IFERROR(INDEX($C$2:$C$6,SMALL(IF($A$2:$A$6=$A19,ROW($A$2:$A$6)-ROW($A$2)+1),COLUMN(A1))),"N/A")
将该公式放入单元格 B19(我设置的方式)并复制到您可能需要的任何单元格。注意:这将输出任何匹配项,即使有帐户重复!
请在此处查看更多信息(有关 INDEX/MATCH 的多个结果): https://exceljet.net/formula/extract-multiple-matches-into-separate-columns