VLOOKUP 函数 | 您所在的位置:网站首页 › vlook查找重复项 › VLOOKUP 函数 |
提示: 尝试使用新的 XLOOKUP 函数,这是 VLOOKUP 的改进版本,可在任何方向工作,默认情况下返回精确匹配项,使其比其前置版本更易于使用。 需要在表格或区域中按行查找内容时,请使用 VLOOKUP。 例如,按部件号查找汽车部件的价格,或根据员工 ID 查找员工姓名。 在这一最简单的形式中,VLOOKUP 函数表示: =VLOOKUP(要查找的内容、要查找的位置、包含要返回的值的范围内的列号、返回表示为 1/TRUE 或 0/FALSE 的近似或精确匹配项)。 提示: 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 参数中指定的单元格区域的第一列中。 例如,如果 table-array 指定的单元格为 B2:D7,则 lookup_value 必须位于列 B 中。 Lookup_value 可以是值,也可以是单元格引用。 Table_array (必需参数) VLOOKUP 在其中搜索 lookup_value 和返回值的单元格区域。 可以使用命名区域或表,并且可以在参数中使用名称,而不是单元格引用。 单元格区域中的第一列必须包含 lookup_value。 单元格区域还需要包含要查找的返回值。 了解如何选择工作表中的区域。 col_index_num (必需参数) 其中包含返回值的单元格的编号(table_array 最左侧单元格为 1 开始编号)。 range_lookup (可选参数) 一个逻辑值,该值指定希望 VLOOKUP 查找近似匹配还是精确匹配: 近似匹配 - 1/TRUE 假定表中的第一列按数字或字母排序,然后搜索最接近的值。 这是未指定值时的默认方法。 例如,=VLOOKUP(90,A1:B100,2,TRUE)。 完全匹配 - 0/FALSE 在第一列中搜索精确值。 例如,=VLOOKUP("Smith",A1:B100,2,FALSE)。 如何开始您需要四条信息才能构建 VLOOKUP 语法: 要查找的值,也被称为查阅值。 查阅值所在的区域。 请记住,查阅值应该始终位于所在区域的第一列,这样 VLOOKUP 才能正常工作。 例如,如果查阅值位于单元格 C2 内,那么您的区域应该以 C 开头。 区域中包含返回值的列号。 例如,如果指定 B2:D11 作为区域,那么应该将 B 算作第一列,C 作为第二列,以此类推。 (可选)如果需要返回值的近似匹配,可以指定 TRUE;如果需要返回值的精确匹配,则指定 FALSE。 如果没有指定任何内容,默认值将始终为 TRUE 或近似匹配。 现在将上述所有内容集中在一起,如下所示: =VLOOKUP(查找值,包含查找值的范围,包含返回值的范围中的列号,近似匹配 (TRUE) 或精确匹配 (FALSE))。 示例下面是有关 VLOOKUP 的几个示例: 示例 1 示例 2 示例 3 示例 4 示例 5只要其中一个表具有与所有其他表共有的字段,就可以使用 VLOOKUP 将多个表合并为一个表。 如果需要与使用较旧版本的 Excel 的人共享工作簿,且旧版本不支持将多个表作为数据源的数据功能,这会特别有用 - 通过将源合并到一个表中并将数据功能的数据源更改为新表,则该数据功能可在较旧版本的 Excel 中使用(前提是旧版本支持数据功能本身)。 在这里,A-F 和 H 列具有仅使用工作表值的值或公式,其余列使用 VLOOKUP 以及 A 列(客户端代码)和 B 列(律师)的值从其他表中获取数据。 将包含公用字段的表复制到新工作表,并为其命名。 单击“数据”>“数据工具”>“关系”打开“管理关系”对话框。 对于每个列出的关系,请注意以下事项: 链接表的字段(在对话框的括号中列出)。 这是 VLOOKUP 公式的 lookup_value。 相关查找表名称。 这是 VLOOKUP 公式中的 table_array。 “相关查找表”中的字段(列),其中包含新列中所需的数据。 此信息未显示在“管理关系”对话框中,必须查看“相关查找表”以查看要检索的字段。 需要记下列号 (A=1) - 这是公式中的 col_index_num。 若要向新表添加字段,请使用在步骤 3 中收集的信息在第一个空列中输入 VLOOKUP 公式。 在我们的示例中,G 列使用律师(lookup_value)从“律师”工作表 tblAttorneys(table_array)的第四列(col_index_num= 4)获取帐单费率数据,公式 =VLOOKUP([@Attorney],tbl_Attorneys,4,FALSE)。 公式还可以使用单元格引用和范围引用。 在我们的示例中,它将 =VLOOKUP(A2,“律师”!A:D,4,FALSE)。 继续添加字段,直到拥有所需的所有字段。 如果尝试准备包含使用多个表的数据功能的工作簿,请将数据功能的数据源更改为新表。 问题 出错原因 返回了错误值 如果 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 技术社区中咨询专家或在社区中获取支持。 另请参阅XLOOKUP 函数 视频:何时以及如何使用 VLOOKUP 课程摘要卡:VLOOKUP 复习 如何更正 VLOOKUP 函数中的 #N/A 错误 使用 VVLOOKUP、INDEX 或 MATCH 查找值 HLOOKUP 函数 |
CopyRight 2018-2019 实验室设备网 版权所有 |