首页 >> 精选问答 >

问excel 匹配函数 vlookup 纵向查表查找教程

2026-11-06 13:54:19

答

在 Excel 里面 VLOOKUP 是使用频率最高的纵向匹配函数,核心作用就是根据一个查找关键字,在数据表首列定位目标行,然后从同一行指定列里面取出对应的匹配结果,之所以大量业务都在用这个匹配函数,是因为跨表核对数据 档案信息调取 业绩对照匹配这类工作,如果人工逐行查找非常耗费时间,原始数据更新之后,VLOOKUP 可以自动重新匹配,不需要人工反复核对,这个匹配函数最大硬性限制就是查找值必须放在数据源区域的第一列,也就是只能从左往右查找,不能反向从右往左取值,这个特性也是新手最容易踩坑的地方,同时 VLOOKUP 支持精确匹配和近似匹配两种模式,两种模式适用场景差别很大,近似匹配要求首列提前升序排序,精确匹配不需要排序,日常绝大多数业务都是使用精确匹配,掌握参数含义 绝对引用 错误值处理 跨表匹配之后,就能稳定使用这个匹配函数完成各类查表任务。

一 VLOOKUP 基础语法

VLOOKUP 查找值 数据表区域 返回第几列 匹配类型

第一个参数 查找值,就是用来匹配的关键字,可以是单元格引用,也可以直接写文本或者数字

第二个参数 数据表区域,就是完整的查找数据源,使用这个匹配函数的时候,查找关键字所在列必须是这个区域里面的第一列,下拉填充公式的时候这个区域一定要加绝对引用锁定

第三个参数 列序号,代表在选定的数据表区域里面,要提取结果是第几列,这个数字是相对于区域起始列计算,不是工作表原始列号

第四个参数 匹配类型,填 0 代表精确匹配,填 1 代表近似匹配,省略参数默认是 1 近似匹配,日常业务优先填写 0

二 基础操作步骤

第一步 准备数据表,假设 A2:D11 是源表,A 列是编号,B 列姓名,C 列部门,D 列工资,E2 单元格是待查找编号,F 列输出匹配结果

第二步 在 F2 单元格输入 VLOOKUP 匹配函数公式

精确匹配公式 =VLOOKUP (E2,A2:D11,4,0)

第三步 公式含义,拿 E2 的编号,在 A2:D11 区域首列 A 列找到对应行,提取这个区域里面第 4 列也就是 D 列工资

第四步 下拉填充公式,这里必须把数据源区域改成绝对引用 $A$2:$D$11,修正之后公式 =VLOOKUP (E2,$A$2:$D$11,4,0),下拉的时候查找区域不会偏移

第五步 如果是跨工作表匹配,数据源在 Sheet1,公式写法就是 =VLOOKUP (E2,Sheet1!$A$2:$D$11,4,0)

三 基础案例表格

编号姓名部门工资
001张三行政5200
002李四销售6800
003王五财务7100

查找值是 002,VLOOKUP 匹配函数执行之后,提取工资 6800,返回结果正确。

四 两种匹配模式深度说明

精确匹配 第四参数填 0

不需要源表首列排序,只要找到和查找值完全一样的内容就返回结果,找不到就返回 N/A,适合编号 姓名 身份证号这类唯一关键字匹配,是这个匹配函数最常用模式。

近似匹配 第四参数填 1

要求首列必须升序排列,查找小于等于查找值的最大项,适合区间查表,比如税率分段 分数等级 温度区间换算,这个模式不是完全相等匹配,很多新手误填 1,会出现结果错误。

五 进阶要点与缺陷说明

反向查找限制

VLOOKUP 匹配函数只能从左向右取值,如果想要根据右侧列的值,去左边列取结果,原生 VLOOKUP 无法直接实现,这种场景可以搭配 IF 构造虚拟数组,或者改用 INDEX MATCH,新版 Excel 也可以使用 XLOOKUP 替代。

重复关键字问题

如果首列存在多个相同查找值,VLOOKUP 匹配函数只会返回从上往下找到的第一条匹配记录,后面重复的记录会被忽略,业务里面如果关键字不唯一,需要提前去重或者增加多条件匹配方案。

错误值优化

原生找不到匹配项会输出 N/A,业务报表一般搭配 IFERROR 包裹,公式 =IFERROR (VLOOKUP (E2,$A$2:$D$11,4,0),"无匹配数据"),出现找不到的时候显示自定义文字,表格更加美观。

六 常见报错排查

1 N/A 查找值在首列不存在,或者查找值是文本型数字,源表是数值格式,两边类型不一致,统一单元格格式即可

2 REF 列序号大于选定数据源区域总列数,检查第三个参数数字

3 VALUE 数据源区域选择错误,或者参数漏写逗号

4 下拉之后全部结果错乱,原因是数据源区域没有加绝对引用,下拉区域发生偏移

5 近似匹配结果异常,首列没有升序,把首列排序之后重新计算

【常见问题】

问题 1 excel 匹配函数 vlookup 为什么只能从左往右查找

回答 1 excel 匹配函数 vlookup 设计规则就是查找值必须位于选定数据源区域的第一列,只能向右提取后面列的数据,所以不能直接反向从右往左取值,这是 vlookup 这个匹配函数原生设计限制。

问题 2 excel 匹配函数 vlookup 第四参数填 0 和填 1 有什么区别

回答 2 excel 匹配函数 vlookup 第四参数填 0 是精确匹配,不需要首列排序,完全一致才返回结果,填 1 是近似匹配,要求首列升序,查找区间匹配值,普通业务查表优先使用 vlookup 匹配函数的 0 精确模式。

问题 3 excel 匹配函数 vlookup 下拉填充结果全部出错怎么办

回答 3 excel 匹配函数 vlookup 下拉出错大多是数据源区域没有锁定绝对引用,公式下拉的时候查找区域自动偏移,给数据源区域加上美元符号锁定之后,vlookup 匹配函数就可以正常逐行匹配。

问题 4 excel 匹配函数 vlookup 遇到重复关键字会返回哪一条记录

回答 4 excel 匹配函数 vlookup 遇到首列重复关键字,匹配函数只会返回从上到下第一条匹配成功的记录,后续重复条目不会被读取,如果需要全部匹配结果,不能只依靠 vlookup 这个匹配函数。

【免责申明】

本内容仅为 Excel 匹配函数 vlookup 教学演示,案例数据均为模拟样例,正式人事 财务 业务台账使用时,请自行核对数据类型 排序规则 关键字唯一性,确认匹配逻辑符合业务要求,计算结果由使用者自行承担相关责任,本文不构成官方规范与业务决策依据。

 

相关阅读

最新文章