VLOOKUP或/和MATCH功能

时间:2013-10-02 03:47:30

标签: excel function match vlookup

我有两个电子表格:

第一个电子表格由两列组成:应用代码(4位代码)和应用代码附带的特定应用名称。大约有5300个应用程序代码和应用名称。

第二个电子表格由一列组成:应用代码,对于此代码,只有4900个应用代码。

基本上我正试图找出缺少的400个应用代码。我想知道是否可以将三列彼此相邻,并且当单元格中没有两个应用代码说“N / A”(缺少400个应用代码)时。

我一直在阅读Vlookup和Match功能,但我不太明白如何在这个现实生活中实现它。我希望有人能指导我如何实现这一目标。

干杯

1 个答案:

答案 0 :(得分:1)

假设电子表格2称为Sheet2,我们假设两个电子表格在第一行中都有标题名称(因此代码和名称从第2行开始向下)。

您可以在第一个电子表格的单元格C2中使用VLOOKUP这样的内容:

=VLOOKUP(A2, Sheet2!A:A, 1, FALSE)

将此公式复制/粘贴(或填充)到数据表的末尾。

该公式实际上从电子表格2中提取匹配的应用代码,这样如果电子表格2中没有相应的应用代码,您将获得#N/A

如果你想使用MATCH,就像那样:

=MATCH(A2, Sheet2!A:A, 0)

VLOOKUP相比,MATCH将返回找到匹配的行号而不是该单元格的值,但如果找不到,则仍会返回#N/A一场比赛。


编辑:由于lookup_table中的空格,你有两个选项,因为你似乎更喜欢MATCH方法,我将给出两个选项:

1)

=MATCH(A2, TRIM(Sheet2!A:A), 0)

这是一个数组公式,所以使用 Ctrl + Shift + 输入使其工作而不是简单地 Enter

数组公式比通常公式慢。

2)

=MATCH("*"&A2&"*", Sheet2!A:A, 0)

这是一个通常的公式,但是如果您确定没有重叠的应用程序代码,则可以使用,我的意思是,如果您在同一范围内同时拥有应用代码'42'和'420' ,它不会按预期工作。然而,它比上面的数组公式快得多。


EDIT2:结果数据真是一团糟,有些值已经转换为日期,其他值则转换为科学记数法。我求助于:

=MATCH(TRIM(A2), TRIM(Sheet2!A:A), 0)

查找表中仍有应用程序代码已被破坏(可能是通过错误处理数据),但这些代码需要手动编辑才能修复。像2.00E+00这样的东西可以是2E00形式的AppCode。


EdIT3:[它变得越来越长了:)]

如果您想获得第3列,其中包含您刚刚提取的相应应用名称,请使用VLOOKUP(公式与您发送给我的文件一致):

=VLOOKUP(TRIM(A2),TRIM(Sheet1!A:B),2,0)

同样,这是一个数组公式,所以使用 Ctrl + Shift + 输入使其工作而不是简单地输入

相关问题