vlookup 是 excel 里面最常用的纵向查找函数,核心作用是根据一个关键字,在指定表格区域第一列进行查找,然后返回同一行里面指定列对应的内容,适合员工信息匹配、产品价格调取、成绩档案对照这类场景,很多新手经常出现查找区域没有绝对引用、列序号填错、查找值格式不一致、近似匹配和精确匹配混淆这些报错问题,掌握四个参数含义,标准写法,常见报错修复方案之后,就可以稳定完成跨表匹配,原始数据源更新之后,vlookup 结果会自动刷新。
一 vlookup 函数语法
函数完整写法
VLOOKUP (查找值,数据表区域,返回第几列,匹配类型)
一共四个参数,每一个参数作用
第一个参数 查找值,就是用来匹配的关键字,比如员工编号、产品编码
第二个参数 数据表区域,查找的整个数据源范围,关键字必须放在这个区域的第一列,这个是 vlookup 硬性规则
第三个参数 列序号,代表要返回的内容在选中这个区域里面是第几列,从区域第一列开始数,第一列就是 1,第二列就是 2
第四个参数 匹配类型,填写 0 代表精确匹配,日常 90% 场景都用 0,填写 1 代表近似匹配,要求数据源第一列提前升序排序,一般很少使用
基础示例
A2 是产品编码,要在 A2:D10 这个区域查找,返回区域里面第三列的单价,精确匹配
=VLOOKUP (A2,$A$2:$D$10,3,0)
重点,$A$2:$D$10 必须加美元符号绝对引用,也就是按 F4 锁定,下拉填充的时候查找区域不会偏移,如果不加绝对引用,下拉之后区域会向下移动,匹配结果全部出错。
二 跨工作表使用 vlookup
如果数据源在另外一张工作表,比如数据源表名字叫档案表,写法就是
=VLOOKUP (A2, 档案表!$A$2:$D$10,3,0)
跨表的时候同样需要对数据源区域做绝对引用,避免下拉填充出错。
三 常见报错和原因
N/A 最常见,代表没有找到匹配关键字,原因一般是两边编码有隐形空格,文本数字和纯数字格式不一样,或者关键字本身在数据源第一列不存在
REF! 列序号错误,第三个参数填写的数字,超过了你选中数据表区域总列数
VALUE! 参数填写错误,比如第四个参数不是 0 或者 1,或者区域选择异常
NAME? 函数名称拼写错误,vlookup 字母打错
四 vlookup 重要限制要点
第一,vlookup 只能从左往右查找,关键字必须在查找区域最左侧,不能实现根据右边关键字查找左边的数据,这个是它最大短板,如果需要反向查找,一般搭配 INDEX 加 MATCH,或者新版 xlookup 替代
第二,只返回第一个匹配结果,如果数据源里面同一个关键字有多条记录,vlookup 只会返回第一条匹配内容,后面重复项不会读取
第三,近似匹配也就是参数填 1 的时候,数据源第一列必须升序排序,否则结果会错误,新手不熟悉尽量不要使用近似匹配。
五 标准操作步骤
1 准备好数据源,确认匹配关键字在数据源第一列
2 在需要输出匹配结果的单元格输入 vlookup 公式
3 依次选择查找值,选中数据源区域,按 F4 添加绝对引用
4 数清楚目标内容在区域里面是第几列,填写列序号
5 第四个参数填写 0,选择精确匹配
6 回车,然后下拉填充整列公式
六 vlookup 参数对比表
| 参数 | 含义 | 填写要点 |
|---|---|---|
| 查找值 | 匹配关键字 | 可以是单元格,也可以是手动输入文本 |
| 数据表区域 | 查找范围 | 关键字必须在区域第一列,推荐绝对引用 |
| 列序号 | 返回内容所在列 | 从区域第一列开始计数 |
| 匹配类型 | 0 精确 1 近似 | 日常优先填 0 精确匹配 |
高频错误排查表
| 错误现象 | 错误原因 | 解决办法 |
|---|---|---|
| 下拉之后全部 #N/A | 数据源区域没有绝对引用 | 选中区域按 F4 改成 $ 锁定 |
| 匹配不上但是肉眼看编码一样 | 两边格式不一致,存在空格 | 使用 TRIM 函数清除空格,统一文本或者数字格式 |
| 返回内容错位 | 列序号数错 | 重新数目标列在选中区域里面是第几列 |
| 重复编码只取第一条 | vlookup 本身特性 | 需要全部匹配就改用其他函数方案 |
补充拓展
新版 excel 365 有 xlookup 函数,可以弥补 vlookup 只能向右查找的缺陷,不需要计算列序号,但是旧版本 excel 没有 xlookup,所以 vlookup 依然是办公必学基础函数。如果需要多条件 vlookup,可以借助辅助列,把多个关键字合并成一列,再做查找匹配。
【常见问题】
1 excel 中怎么使用 vlookup 函数,第四个参数 0 是什么意思
答 excel 中怎么使用 vlookup 函数,第四个参数 0 代表精确匹配,excel 中怎么使用 vlookup 函数日常匹配编码、编号都使用精确匹配。
2 excel 中怎么使用 vlookup 函数,为什么下拉填充全部报错
答 excel 中怎么使用 vlookup 函数,大多是查找区域没有绝对引用,excel 中怎么使用 vlookup 函数要用 F4 锁定数据源区域,防止下拉偏移。
3 excel 中怎么使用 vlookup 函数,vlookup 能不能反向查找
答 excel 中怎么使用 vlookup 函数,vlookup 要求关键字在区域第一列,默认不能反向查找,excel 中怎么使用 vlookup 函数反向查找可以改用 INDEX MATCH 或者 xlookup。
4 excel 中怎么使用 vlookup 函数,N/A 是什么错误
答 excel 中怎么使用 vlookup 函数,N/A 代表没有匹配到关键字,excel 中怎么使用 vlookup 函数检查空格、数据格式还有关键字是否存在数据源第一列。
【免责声明】
本教程基于桌面版 excel 通用版本讲解 vlookup 函数,不同版本 excel 函数兼容情况存在细微差别,本内容仅作为学习参考,不承担因为公式编写错误造成匹配结果异常以及相关损失责任。


