假设我们有两列,
COLUMN1 COLUMN2
BATMAN 1
SUPERMAN A/S 2
ROBINE 3
Aquaman 3D 4
现在我希望在左栏中有一个新列表,我可以从中导入原始海量数据。这样
COLUMN1 COLUMN2
BATMAN A/S 1
AQUAMAN 4
我希望 Excel 搜索原始列表并在第二列提供所需的值。
我还附上了我的 excel 快照,并附上了这个问题。我一直在尝试使用以下公式,但它没有给我我想要的结果,
=INDEX($B$1:$B$5;MATCH(D2;$A$1:$A$5;1);COLUMN($A$1))
这里的主要问题是原始列表中的名称与第二个列表“不完全相同”,因此我希望 excel 能够选择部分匹配,但每次我在上面的公式中插入“-1”或“1”时,它都不起作用。还有其他公式可以使用吗?
任何帮助都非常感谢。谢谢。
答案1
当尝试搜索不完全匹配项并提取其值时,这有点问题。您总共有 4 列。前两列(例如 A 和 B)是要从中提取数据的参考列。所以,我们开始吧:
在最后两列(例如 C 和 D)的第一列(C)中,您将输入“不精确”值,在第二列(D)中,您希望从参考列中提取匹配项。
单击要从 B 列中提取值的 D 列中的单元格并输入以下内容=VLOOKUP(D2&"*",$A$1:$B$5,2,FALSE)
;按“Enter”键:
(从该单元格的边缘向下拖动十字线可在列的其他单元格中应用相同的效果)
在给定的公式中,D2 是包含部分字符串的单元格,A1:B5 是数据范围,2 表示查找范围第二列(即 B 列)中的值。(您可以根据需要更改/调整它们,但为了您的方便,我已制作了与您的完全匹配的 Excel 表。)
现在,当您使用部分搜索字符串(如“SUPE”)按下“Enter”键时,它会从 B 列中提取值并在 D 列显示该值。请看下图:
(当我搜索“SUPE”时,它给出了 B 列中与“超人”相对应的值)
类似地,搜索“aqu”而不是“AQUAMAN 3D”会得到这样的结果:
编辑:由于您要求:
是否有可能阻止 Excel 再次选择相同的名称两次?
是的,确实可以,而且我发现了一个非常简单的方法。你只需要添加一个额外的列,我们称之为最终D,最终过滤结果将出现在此处。 创建列后,将其输入到第一个单元格(此处为 F2):
=IF(COUNTIF($E$1:E1,E2)>0,"SKIPPED",E2)
现在,从该单元格的边缘一直向下拖动,对整个列执行相同操作(最终 D)。这里只有唯一的名称,因此我们让 Excel 不再选择相同的名称两次。看这个:
就是这样。试试看,然后告诉我效果如何 :)