VLOOKUP 函数

当需要在表格或区域中按行查找项目时,请使用VLOOKUP。例如,按部件号查找汽车部件的价格,或根据员工ID查找员工姓名。

提示: 查看这些来自Excel社区专家的YouTube视频获取有关VLOOKUP的更多帮助!

在这一最简单的形式中,VLOOKUP函数表示:

=VLOOKUP(你想要查找的内容,要查找的位置,包含要返回的值的区域中的列号,返回近似或精确匹配-表示为1/TRUE或0/假)。

提示: VLOOKUP的秘诀在于组织数据,这样您查找的值(水果)位于要查找的返回值(金额)的左侧。

技术细节使用VLOOKUP函数在表中查找值。

语法

VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])

例如:

  • =VLOOKUP(A2,A10:C20,2,TRUE)

  • =VLOOKUP(“袁”,B2:E7,2,FALSE)

  • =VLOOKUP(A2,”客户端详细信息”!A:F,3,FALSE)

参数名称

说明

lookup_value   (必需参数)

要查找的值。要查找的值必须位于您在table_array参数中指定的单元格区域的第一列中。

例如,如果表数组跨越单元格B2:D7,则您的lookup_value必须位于B列中。

Lookup_value可以是值,也可以是单元格引用。

Table_array   (必需参数)

VLOOKUP在其中搜索lookup_value和返回值的单元格区域。你可以使用命名区域或表,并且可以在参数中使用名称,而不是单元格引用。 

单元格区域中的第一列必须包含lookup_value。单元格区域中还需要包含要查找的返回值。

了解如何选择工作表中的区域。

col_index_num   (必需参数)

包含返回值的列号(从1开始的table_array的最左侧列)。

range_lookup   (可选参数)

一个逻辑值,该值指定希望VLOOKUP查找近似匹配还是精确匹配:

  • 近似匹配-1/TRUE假设表中的第一列按数值或字母顺序排序,然后将搜索最接近的值。这是未指定值时的默认方法。例如,=VLOOKUP(90,A1:B100,2,TRUE)。

  • 完全匹配-0/FALSE将搜索第一列中的确切值。例如,=VLOOKUP(”Smith”,A1:B100,2,FALSE)。

如何开始您需要四条信息才能构建VLOOKUP语法:

  1. 要查找的值,也被称为查阅值。

  2. 查阅值所在的区域。请记住,查阅值应该始终位于所在区域的第一列,这样VLOOKUP才能正常工作。例如,如果查阅值位于单元格C2内,那么您的区域应该以C开头。

  3. 区域中包含返回值的列号。例如,如果指定B2:D11作为区域,则应将B作为第一列,将C作为第二列进行计数,依此类推。

  4. (可选)如果需要返回值的近似匹配,可以指定TRUE;如果需要返回值的精确匹配,则指定FALSE。如果没有指定任何内容,默认值将始终为TRUE或近似匹配。

现在将上述所有内容集中在一起,如下所示:

=VLOOKUP(查阅值、包含查阅值的区域、包含返回值的区域中的列号、近似匹配(TRUE)或完全匹配(FALSE))。

示例下面是有关VLOOKUP的几个示例:

示例1

示例2

示例3

示例4

示例5

使用VLOOKUP将多个表中的数据合并到一个工作表中可以使用VLOOKUP将多个表合并到一个表中,只要其中一个表具有与所有其他表相同的字段。如果你需要与具有较早版本的Excel的用户共享工作簿,并且该用户不支持将数据与多个表作为数据源的用户共享,则这可能会非常有用,方法是将源合并到一个表中,然后将数据功能的数据源更改为新的表中,数据功能可用于较旧的Excel版本(前提是数据功能本身受较旧版本支持)。

此处,列A-F和H具有仅使用工作表中的值的值或公式,其余列使用VLOOKUP和列A(客户端代码)和列B(律师)的值从其他表中获取数据。

  1. 将具有公共字段的表复制到新工作表上,并为其命名。

  2. 单击”数据>数据工具>关系”以打开”管理关系”对话框。

  3. 对于列出的每个关系,请注意以下事项:

    • 链接表的字段(列在对话框中的括号中)。这是VLOOKUP公式的lookup_value。

    • 相关的查阅表格名称。这是VLOOKUP公式中的table_array。

    • 在新列中具有所需数据的相关查阅表格中的字段(列)。”管理关系”对话框中不显示此信息-您必须查看相关的查阅表才能查看要检索的字段。你想要记下列号(A=1),这是公式中的col_index_num。

  4. 若要将字段添加到新表,请使用步骤3中收集的信息在第一个空列中输入VLOOKUP公式。

    在我们的示例中,列G使用律师(lookup_value)从律师费工作表表(col_index_num=4)获取账单费率数据,tblAttorneys(Table_array),公式=VLOOKUP([@Attorney],tbl_Attorneys,4,FALSE)。

    公式还可以使用单元格引用和区域引用。在我们的示例中,它将是=VLOOKUP(A2,”律师费”!A:D、4、FALSE)。

  5. 继续添加字段,直到获得所需的所有字段。如果您尝试准备包含使用多个表的数据功能的工作簿,请将数据源的数据源更改为新表。

常见问题

问题

出错原因

返回了错误值

如果range_lookup为TRUE或被排除在外,需要对第一列按字母或数字顺序排序。如果未对第一列排序,可能会返回意外值。请对第一列排序,或使用FALSE以获得精确匹配项。

单元格中显示#N/A

  • 如果range_lookup为TRUE,并且lookup_value中的值比table_array的第一列中的最小值小,将显示错误值#N/A。

  • 如果range_lookup为FALSE,则错误值#N/A表示未找到精确匹配项。

有关在VLOOKUP中解决#N/A错误的详细信息,请参阅如何在VLOOKUP函数中更正#N/A错误。

#REF!(显示在单元格中)

如果col_index_num大于table-array中的列数,则显示错误值#REF!。

有关在VLOOKUP中解决#REF!错误的详细信息,请参阅如何更正#REF!错误.

#VALUE!(显示在单元格中)

如果table_array小于1,则显示错误值#VALUE!。

有关在VLOOKUP中解决#VALUE!错误的详细信息,请参阅如何在VLOOKUP函数中更正#VALUE!错误.

#NAME?(显示在单元格中)

错误值#NAME?通常意味着该公式缺少引号。要查找人员的姓名,请确保在公式中的姓名左右加上引号。例如,在=VLOOKUP(“袁”,B2:E7,2,FALSE)中输入姓氏“”袁””。

有关详细信息,请参阅如何更正#NAME!错误.

Excel中的#SPILL!(显示在单元格中)

此特定#SPILL!错误通常意味着你的公式依赖于查找值的隐式交集,并使用整个列作为引用。例如=VLOOKUP(A:A,A:C,2,FALSE)。你可以通过使用@运算符(如下所示)定位查找引用来解决此问题:=VLOOKUP(@A:A、A:C、2、FALSE)。或者,你可以使用传统VLOOKUP方法并引用单个单元格,而不是整个列:=VLOOKUP(A2,A:C,2,FALSE)。

最佳做法

要执行的操作

原因

对range_lookup使用绝对引用

通过使用绝对引用,可以向下填充公式,这样该公式始终在完全精确的查找区域内查找。

了解如何使用绝对单元格引用。

请勿将数字或日期值存储为文本。

在搜索数字或日期值时,请确保table_array第一列中的数据未存储为文本值。否则,VLOOKUP可能返回不正确或意外的值。

对第一列排序

range_lookup为TRUE时使用VLOOKUP之前对table_array的第一列排序。

使用通配符

如果range_lookup为FALSE且lookup_value为文本,您可在lookup_value中使用通配符 -问号(?)和星号(*)。问号匹配任何单个字符。星号匹配任何字符序列。如果要查找实际的问号或星号,则在字符前键入代字号(~)。

例如,=VLOOKUP(”Fontan?”,B2:E7,2,FALSE)将搜索最后一个字母可能会发生变化的所有Fontana实例。

请确保您的数据中不包含错误的字符。

在第一列中搜索文本值时,请确保第一列中的数据没有前导空格、尾部空格、直引号(’或”)与弯引号(‘或“)不一致或非打印字符。否则,VLOOKUP可能返回意外的值。

要获得准确的结果,请尝试使用CLEAN函数或TRIM函数删除单元格中表格值后后面的后置空格。

需要更多帮助吗?可随时在Excel技术社区中咨询专家,在解答社区获得支持,或在ExcelUserVoice上建议新功能或功能改进。

另请参阅课程摘要卡:VLOOKUP复习课程摘要卡:VLOOKUP疑难解答提示YouTube:来自Excel社区专家的VLOOKUP视频有关VLOOKUP的全部须知内容如何更正VLOOKUP函数的#VALUE!错误如何更正VLOOKUP函数的#N/A错误Excel中的公式概述如何避免损坏的公式检测公式中的错误Excel函数(按字母顺序)Excel函数(按类别列出)VLOOKUP(免费预览)

office办公软件入门基础教程 » VLOOKUP 函数

本文链接:【VLOOKUP 函数】https://www.officeapi.cn/65300.html

OFFICE,天天学一点,进步多一点

联系我们