Excel VLOOKUP用法大全,从入门到精通看这一篇就够了
Excel VLOOKUP用法大全,从入门到精通看这一篇就够了
做人事报表、核对数据的时候,最头疼的就是两张表对着找数据。几百行数据手动一个个对,眼睛都看花了还容易错。其实用VLOOKUP函数,就是专门解决这个问题的。
一、VLOOKUP到底是干啥的
简单说,VLOOKUP就是"按列找值"。给它一个关键词,它帮你在表格里找到对应行的某个数据。比如有一张员工信息表,你输入工号,VLOOKUP就能自动找出这个工号对应的姓名、部门、工资。
它的公式有4个参数:
| 参数 | 说明 | 大白话解释 |
|---|---|---|
| lookup_value | 要查找的值 | 你手里的关键词(比如工号) |
| table_array | 查找范围 | 去哪张表找数据 |
| col_index_num | 返回列号 | 要找的数据在第几列 |
| range_lookup | 匹配方式 | 0=精确匹配(最常用),1=近似匹配 |
最常用的写法:
=VLOOKUP(A2, B:E, 3, 0)
意思是:在B到E列中,找A2这个值,找到后返回第3列的数据,0表示精确匹配。
二、5个高频使用场景
场景1:基础单表查询
最常见的,根据工号查姓名、根据姓名查部门。
=VLOOKUP(D2, A:B, 2, 0)
场景2:跨工作表查询
数据在另一个工作表里,也能直接用。
=VLOOKUP(A2, '员工表'!A:D, 4, 0)
场景3:近似匹配(区间查找)
算提成、算等级的时候用。比如销售额0-5000提成3%,5000-20000提成5%。
注意:近似匹配时,第一列必须升序排序!
=VLOOKUP(B2, $F$2:$G$5, 2, 1)
场景4:多列同时返回
需要同时返回姓名、部门、工资三列,不用写三遍公式。
=VLOOKUP($A2, $E:$H, COLUMN(B2)-COLUMN($B$2)+2, 0)
写好第一个往右拖,自动变第2列、第3列、第4列。
场景5:错误值处理
找不到数据时会显示#N/A,用IFNA包一下就好看多了。
=IFNA(VLOOKUP(A2, B:E, 3, 0), "未找到")
三、常见错误排查
1. 总是返回#N/A,但明明有这个值
90%的情况是这两种:一是查找值和被查找的值格式不一样(一个是文本一个是数字),二是有空格。用TRIM函数去掉空格,或者用VALUE/TEXT转换格式。
2. 往下拖公式结果不对
查找范围没有用绝对引用。记得给查找范围的行号列标加上$符号,比如$B$2:$E$100。
3. 返回的值不对,差一列
列号数错了。注意是从查找范围的第一列开始数,不是从表格A列开始数。
四、补充:比VLOOKUP更好用的XLOOKUP
如果你用的是Excel 2021或Microsoft 365,推荐试试XLOOKUP,它是VLOOKUP的升级款,不用数列号、支持反向查找、默认精确匹配,比VLOOKUP好用太多。
=XLOOKUP(查找值, 查找列, 返回列)
不过VLOOKUP虽然老,但胜在所有版本都能用,老文件也都是用VLOOKUP写的,所以还是得会。
写在最后
VLOOKUP看着复杂,其实用多了就那回事。记住4个参数,多练几次就熟了。做表的时候能用公式就别手动,省下来的时间摸鱼不好吗。
👉 更多办公效率技巧,访问 effiwork.cn 打工人效率导航