分享

VLOOKUP函数查找技巧

 Excel实用知识 2021-05-01

情形1:查找数值的数据类型不一致

相同的值但以不同的数据类型来存储,对于VLOOKUP函数来说是不同的。

在单元格中,可以存储不同类型的数据,例如数字、文本字符串、日期和布尔值。在单元格中输入4000时,Excel通常将其识别并存储为数字。Excel默认右对齐数字。

有时,当从其他数据源导入数据到Excel中时,Excel会对数据类型进行假设,会将数字存储为文本字符串。Excel默认左对齐文本字符串。

图片

1

此时,如果使用VLOOKUP函数来匹配这两个值(一个值存储为数字,一个值存储为文本字符串),则不会匹配。当作为不同的数据类型存储时,VLOOKUP将不匹配等效值。如下图2所示,尝试查找编号对应的物品名称时,会返回错误。

图片

2

技巧:使用TEXT函数作为VLOOKUP函数的第1个参数

TEXT函数将数字转换为文本字符串。通过在VLOOKUP函数的第1个参数中使用TEXT函数,使查找值的类型匹配。

TEXT函数有两个参数,第1个参数是要转换的值,第2个参数是格式代码。因为我们不关心格式代码,所以对第2个参数使用0

在图2中,查找编号对应的物品名称的公式修改为:

=VLOOKUP(TEXT(A11,0),1,2,0)

显示正确的查找结果,如图3所示。

图片

3

当然,如果想要将数值文本转换成数值,可以使用VALUE函数。

更进一步,如果想要公式既满足数值文本,又适合数值,可以使用IFERROR函数:

=IFEEROR(VLOOKUP(TEXT(A11,0),1,2,0),VLOOKUP(VALUE(A11,0),1,2,0))

情形2:查找值在不同的列

有时,查找值不在同一列,如何使用同一公式来实现查找。

4中灰色背景的单元格是要根据其左侧单元格值来获取相应的数据。

图片

4

在图5所示的表2中存储着原数据。

图片

5

使用VLOOKUP函数从表2中获取数据。在单元格D9中的公式:

=VLOOKUP(A9,2,2,0)

结果如图6所示。

图片

6

然后,我们将公式复制到其他单元格中,如图7所示。可以看出,在单元格D14D15中发生错误。

图片

7

很显然,出现错误的原因在于复制公式后,公式会自然地改变为查找引用单元格为A14A15,如图8所示。而实际上要查找的单元格为B14B15,即这里的查找值与原公式查找值在不同的列。

图片

8

一个简单的方法是,将公式中的A14修改为B14。然而,如果有许多这样的公式,修改起来很麻烦。能否使用同一个公式而无须修改呢?这样,公式更容易更新和维护。

技巧:VLOOKUP函数的第1个参数中使用连接运算

通过连接值来创建单个文本字符串,其中一种方法是使用连接运算符&。修改上图6中的公式为:

=VLOOKUP(A9&B9,2,2,0)

将公式复制到其他单元格中,结果如图9所示。

图片

9

情形3:查找值包含空格时

如果要查找的文本字符串包含前导空格、中间空格或尾空格,而在查找表中没有空格,那么VLOOKUP函数就会返回错误结果。

如图10所示,根据产品编号在表4中查找相应的成本。

图片

10

4如图11所示。

图片

11

在图10中,单元格C10中的公式为:

=VLOOKUP(A10,4,2,0)

结果返回错误值,如图12所示。

图片

12

为什么会这样?仔细检查,发现在单元格A10中的数据结尾包含有空格。

技巧:VLOOKUP函数的第1个参数中使用TRIM函数

可以使用TRIM函数移除文本字符串中多余的空格。因此,将单元格C10中的公式修改为:

=VLOOKUP(TRIM(A10),4,2,0)

将公式下拉至单元格C14,结果如图13所示。

图片

13

情形4:部分匹配

有时,查找的值只是查找表中数据的部分内容,查找表如下图14所示的表5

14

单元格A9中是查找值,要在单元格B5中返回查找的结果。使用公式:

=VLOOKUP(A9,5,2,FALSE)

获得的结果为#N/A,如图15所示,

图片

15

当然,你可以使用我们前面介绍的技巧,将表5中的数据排序后再进行近似匹配,可能会返回所需要的结果。然而,我们这里使用更合理的部分匹配技巧。

技巧:VLOOKUP函数的第1个参数中使用通配符

通配符是可以代表其他字符的一个字符。例如,星号(*)可以代表任意数量的字符。因此,我们需要将查找值与星号相连接。修改后的公式如下:

=VLOOKUP(A9&"*",5,2,FALSE)

结果如图16所示。

图片

16

在表中的数据后面包含查找值时,可以使用”*”&A9查找。在表中的数据中间包含查找值时,可以使用”*”&A9”*”

结语

在使用VLOOKUP函数时,结合具体情形,将其第1个参数进行适当的调整,就能够达到返回正确的数据的目的。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多