在Excel/VBA中,从具有重复项的名称列表生成查找表
我在一张表中有一个Excel中的名称和实例列表,在另一张表中有一个名称和用户ID列表。我想在实例表中创建一列引用名称和用户ID,但是有些用户的名称相同。对于1:1匹配,我使用vlookup来获取相应的ID,但这不适用于多个实例。在多:1关系的情况下,如何创建一个列来显示与该名称关联的所有可能ID?例如:在Excel/VBA中,从具有重复项的名称列表生成查找表,excel,vba,Excel,Vba,我在一张表中有一个Excel中的名称和实例列表,在另一张表中有一个名称和用户ID列表。我想在实例表中创建一列引用名称和用户ID,但是有些用户的名称相同。对于1:1匹配,我使用vlookup来获取相应的ID,但这不适用于多个实例。在多:1关系的情况下,如何创建一个列来显示与该名称关联的所有可能ID?例如: User Name: User ID: Rusty McShackleford 1234560 Rusty McShackleford 1234570
User Name: User ID:
Rusty McShackleford 1234560
Rusty McShackleford 1234570
Rusty McShackleford 1234580
Rusty McShackleford 1230110
Zap Brannigan 0000001
在上面的示例中,我可以将Zap与用户ID匹配,因为只有一个实例,如何将Rusty(或所有Rusty)与一个实例匹配。感谢您的帮助vlookup()需要一组唯一的值。在您的特定情况下,我将考虑在UrSurID上运行vLoopUp(),因为看起来A是唯一标识每个用户的值。
在这方面:
A2:A15
名称B2:B15
IDsD2
{=INDEX($A$2:$A$15;MATCH(0;COUNTIF($D$1:D1;$A$2:$A$15);0))}
数组公式,在公式窗口中按Ctrl-Shift-Enter键可输入,卷曲括号由Excel插入,而不是由用户插入。在
A2:A15
中列出了唯一的名称,应向下复制。该列可以隐藏
E2
:带有下拉列表的单元格,从列D
F3
:=F2+匹配($E$2;偏移($A$1;F2+1;0):$A$15;0)
,向下复制<代码>F2是一个空单元格。在A列中查找匹配名称的行。F列可以隐藏。
E3
:=抵销($1;F3;1)
为特定名称选择ID。公式将被复制下来
电子表格示例:我成功地使用了Vlookup,但我正在查看的表没有唯一的ID,它只有名称+日期/时间。ID是我试图将每个实例与之匹配的。请查看。让我知道要改变什么。你的很好用,谢谢。但愿我能投你一票。