杰瑞科技汇

VLOOKUP函数怎么用?新手必学技巧!

VLOOKUP 函数终极教程

VLOOKUP 是 Excel 中最常用、也最强大的函数之一,它的名字来源于 "Vertical Lookup"(垂直查找),意思是在表格的第一列中查找一个值,并返回该行中指定列的值

VLOOKUP函数怎么用?新手必学技巧!-图1
(图片来源网络,侵删)

你可以把它想象成查字典:

  • 要查的字:你想要查找的值("苹果")。
  • 字典的目录:你的数据表格的第一列。
  • 字典的页码:你想要返回结果的列("价格" 所在的列)。
  • 查到的结果:字典中 "苹果" 对应的 "价格"。

VLOOKUP 的基本语法

我们来看一下 VLOOKUP 函数的完整结构:

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

这个函数有四个参数,其中前三个是必需的,最后一个是可选的。

参数 中文解释 说明
lookup_value 查找值 你要在表格第一列中查找的值,可以是数字、文本或逻辑值。
table_array 表格区域 你要查找的数据范围。注意:查找值必须始终位于这个区域的第一列
col_index_num 列序号 当找到匹配行后,你希望返回该行中第几列的值。第一列的序号是 1,第二列是 2,以此类推。
[range_lookup] 匹配模式 这是一个可选参数,决定查找是精确匹配还是近似匹配。
FALSE0精确匹配,查找值必须与第一列的值完全一样,找不到则返回 #N/A 错误,这是最常用的模式。
TRUE1近似匹配,查找值不需要完全匹配,Excel 会找到小于或等于查找值的最大值。使用此模式时,查找列(第一列)必须按升序排序,否则结果可能错误。

VLOOKUP 实战案例

我们通过一个常见的“员工信息表”来学习。

场景:我们有一个员工信息表,现在想根据员工的工号,快速查到他的姓名和部门。

A B C D
工号 姓名 部门 工资
A001 张三 销售部 8500
A002 李四 技术部 9200
A003 王五 市场部 7800
A004 赵六 财务部 8800

案例 1:精确匹配 - 查找员工姓名

这是最常用的场景,要求工号必须完全匹配。

目标:根据工号 A003,查找他的姓名。

操作步骤

  1. 在任意空白单元格(F2)输入公式:
    =VLOOKUP("A003", A2:D5, 2, FALSE)
  2. 按下回车键。

公式解析

  • "A003"查找值,我们要找工号为 A003 的员工。
  • A2:D5表格区域,我们的数据在这个矩形区域内,注意,A列是工号,是查找的起点。
  • 2列序号,我们想要返回姓名,姓名在表格区域的第 2 列(B列)。
  • FALSE匹配模式,表示必须精确匹配 A003

结果:公式会返回 王五

进阶:使用单元格引用 为了方便使用,我们通常不会把查找值直接写在公式里,而是引用一个单元格。

  1. 在 G1 单元格输入要查找的工号,A002
  2. 在 G2 单元格输入公式:
    =VLOOKUP(G1, A2:D5, 2, FALSE)
  3. 只要你在 G1 单元格改变工号,G2 的结果就会自动更新。

案例 2:精确匹配 - 查找员工部门

目标:根据工号 A004,查找他的部门。

操作: 在 F3 单元格输入公式:

=VLOOKUP("A004", A2:D5, 3, FALSE)

公式解析

  • 查找值是 "A004"
  • 表格区域仍然是 A2:D5
  • 3:因为部门在表格区域的第 3 列(C列)。
  • FALSE:精确匹配。

结果:公式会返回 财务部


VLOOKUP 的常见错误与解决方案

使用 VLOOKUP 时,经常会遇到一些错误信息,了解它们的原因和解决方法非常重要。

错误 1:#N/A 错误

原因:最常见的原因是 VLOOKUP 找不到查找值

  1. 精确匹配下,查找值在第一列中不存在
  2. 拼写错误:比如查找 A003,但表格里是 A003(多了一个空格)。
  3. 数据格式不一致:比如查找值是文本 1001,但表格里是数字 1001,或者反过来。

解决方案

  1. 检查数据:确认查找值是否确实存在于表格的第一列。
  2. 使用 TRIM 函数:去除查找值或目标数据中的多余空格。
    =VLOOKUP(TRIM(G1), A2:D5, 2, FALSE)
  3. 使用 VALUETEXT 函数:统一数据格式。
    • 如果查找值是文本,想匹配数字:=VLOOKUP("A003", ...) (通常能自动匹配)
    • 如果查找值是数字,想匹配文本:=VLOOKUP(VALUE("A003"), ...) (需要将文本转为数字,但文本转数字通常不行,最好是统一源数据格式)

错误 2:#REF! 错误

原因列序号 (col_index_num) 超出了表格区域的列数。 你的表格区域只有 4 列(A到D),但你却写成了 VLOOKUP(..., 5, FALSE)

解决方案: 检查你的 col_index_num,确保它小于或等于 table_array 的总列数。

错误 3:#VALUE! 错误

原因列序号 (col_index_num) 是一个小于 1 的数字(0 或负数)。

解决方案: 检查你的 col_index_num,确保它是一个正整数。

错误 4:返回了错误的结果(但不是错误值)

原因使用了近似匹配 (TRUE),但第一列没有排序

解决方案

  • 方法一:将 range_lookup 参数改为 FALSE,使用精确匹配。
  • 方法二:如果你确实需要近似匹配(比如计算税率、等级等),必须先将查找列(第一列)按从小到大的顺序排序

VLOOKUP 的局限性(非常重要!)

VLOOKUP 虽然强大,但也有几个天生的“硬伤”,了解它们能帮助你选择更合适的工具。

  1. 查找列必须在数据区域的最左侧:这是 VLOOKUP 最致命的限制,如果你想根据“姓名”去查找“工号”,VLOOKUP 就无能为力,因为姓名不在第一列。
  2. 无法向左查找:这是上一条的延伸,导致它只能返回查找值右边列的数据。
  3. 不支持动态列引用:如果你在表格中插入或删除了列,可能会导致 col_index_num 失效,返回错误的结果。
  4. 无法处理多条件查找:VLOOKUP 一次只能根据一个条件进行查找。

VLOOKUP 的替代方案(现代 Excel 的首选)

由于 VLOOKUP 的局限性,微软在较新版本的 Excel 中引入了更强大、更灵活的函数。

替代方案 1:XLOOKUP 函数 (Excel 365, Excel 2025 及更新版本)

XLOOKUP 是 VLOOKUP 的完美升级版,它解决了所有 VLOOKUP 的痛点。

语法

XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])

用 XLOOKUP 重写案例 1: 目标:根据工号 A003,查找他的姓名。

=XLOOKUP("A003", A2:A5, B2:B5)

对比 VLOOKUP

  • lookup_array (A2:A5) 和 return_array (B2:B5) 是分开的,不再要求查找列在最左边
  • 默认就是精确匹配,更简单。
  • 可以直接指定找不到时返回什么,=XLOOKUP("A999", A2:A5, B2:B5, "未找到此人")

如果你的 Excel 版本支持,请优先使用 XLOOKUP

替代方案 2:INDEX + MATCH 组合

这是在旧版 Excel 中最经典的 VLOOKUP 替代方案,功能强大且灵活。

语法

=INDEX(返回值的区域, MATCH(查找值, 查找的区域, 0))
  • MATCH 函数负责定位,告诉你要找的值在哪一行(或列)。
  • INDEX 函数负责提取,根据 MATCH 提供的位置,从指定区域中取出数据。

用 INDEX + MATCH 重写案例 1: 目标:根据工号 A003,查找他的姓名。

=INDEX(B2:B5, MATCH("A003", A2:A5, 0))

公式解析

  1. MATCH("A003", A2:A5, 0):在 A2:A5 区域中精确查找 "A003",它位于这个区域的第 1 个位置。
  2. INDEX(B2:B5, 1):在 B2:B5 区域中,返回第 1 个位置的值,即 王五

优点

  • 可以自由向左查找,完美解决了 VLOOKUP 的最大问题。
  • 更灵活,不易因列的增删而失效。

总结与对比

特性 VLOOKUP INDEX + MATCH XLOOKUP
查找方向 只能向右 任意方向 任意方向
查找列位置 必须在最左侧 无限制 无限制
匹配模式 需指定 FALSE 需指定 0 默认精确匹配
错误处理 需用 IFERROR 包装 需用 IFERROR 包装 内置 if_not_found 参数
易用性 简单,但限制多 较复杂,但灵活 非常简单、直观
版本要求 所有版本 所有版本 Excel 365/2025+

最终建议

  • 新手或快速任务:对于简单的、查找列在左侧的精确匹配任务,VLOOKUP 仍然是一个快速有效的选择。
  • 旧版 Excel 用户:当需要向左查找或处理复杂场景时,请使用 INDEX + MATCH 组合。
  • 新版 Excel 用户:直接拥抱未来,使用 XLOOKUP,它是目前功能最全面、最易用的查找函数。

希望这份详尽的教程能帮助你彻底掌握 VLOOKUP 函数!多加练习,很快就能运用自如。

分享:
扫描分享到社交APP
上一篇
下一篇