欢迎光临
我们一直在努力

【Excel公式03】VLOOKUP|Excel查找函数的扛把子,学会了它你才算入门

日常办公里有类需求特别高频:给你一个名字,在一堆数据里找到它对应的信息。工资表里查某人的基本工资、订单表里查某个单号的金额、产品表里查某个编码的售价……手动翻?数据少还行,几百行以上就是纯折磨。

VLOOKUP就是干这事的:你给一个值,它在表格里帮你找到对应的那一行,把你要的列拎出来。Excel查找函数里用得最多的,没有之一。

一、VLOOKUP函数基础语法

        VLOOKUP 的全称是 "Vertical Lookup",即垂直查找。它的工作原理是在表格的第一列中查找指定的值,然后返回该值所在行中指定列的对应数据。

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

语法拆开看,其实就四段 !!!

=VLOOKUP(找什么, 在哪找, 返回第几列, 怎么找)

参数白话举个例子
找什么 你手上的线索 "张三"、A2单元格
在哪找 搜索范围,必须包含查找列和结果列 A:D
返回第几列 找到行之后,要取第几列的数据 3
怎么找 0=精确匹配,1=模糊匹配 0

新手重点:

  • "在哪找"的范围内,查找列必须在最左边。VLOOKUP只能从左往右找,这是它最大的限制,也是后面INDEX+MATCH存在的理由。
  • 第4个参数99%的场景写0(精确匹配),不写的话默认是1,结果会出错。
  • "第几列"是相对于你选的范围来数的,不是整个工作表的列号。

二、实战案例

1. 精确查找:

   假设我们有以下员工信息表(A1:D6):   

员工编号姓名部门工资
1001 张三 销售部 8000
1002 李四 技术部 10000
1003 王五 财务部 9000
1004 赵六 人事部 8500
1005 孙七 市场部 9500

  现在我们需要在 F2 单元格中输入员工编号,然后在 G2 单元格中自动显示对应的姓名。      

公式写法

=VLOOKUP(F2, A1:D6, 2, FALSE)

  • F2:要查找的员工编号
  • A1:D6:整个员工信息表区域
  • 2:姓名在查找区域的第 2 列
  • FALSE:使用精确匹配

扩展应用

如果我们还想查找部门和工资,只需要修改列号参数即可:

  • 查找部门:=VLOOKUP(F2, A1:D6, 3, FALSE)
  • 查找工资:=VLOOKUP(F2, A1:D6, 4, FALSE)

进阶用法:近似匹配

近似匹配适用于查找数值区间的情况,例如根据分数查找等级、根据销售额查找提成比例等。

示例场景

假设我们有以下成绩等级表(A1:B5):

分数下限等级
0 不及格
60 及格
80 良好
90 优秀

现在我们需要根据学生的分数自动判断对应的等级。

公式写法

=VLOOKUP(D2, A1:B5, 2, TRUE)

关键要求

使用近似匹配时,查找区域的第一列必须按升序排序,否则 VLOOKUP 会返回错误的结果。

工作原理

VLOOKUP 会查找小于或等于查找值的最大值,然后返回对应的结果。例如:

  • 分数为 75 分,小于 80 大于 60,返回 "及格"
  • 分数为 88 分,小于 90 大于 80,返回 "良好"
  • 分数为 95 分,大于 90,返回 "优秀"

常见错误及解决方案

1. #N/A 错误

原因:找不到匹配的值。

解决方案:

  • 检查 查找值是否存在于查找区域的第一列
  • 检查 查找值和查找区域中的值是否有空格或其他不可见字符
  • 检查 是否使用了正确的匹配方式(精确匹配用 FALSE)
  • 使用 IFERROR 函数美化错误显示:

    =IFERROR(VLOOKUP(F2, A1:D6, 2, FALSE), "未找到")

2. #REF! 错误

原因:col_index_num 参数大于查找区域的列数。

解决方案:

  • 检查列号参数是否正确
  • 确保在插入或删除列后更新了列号参数

3. #VALUE! 错误

原因:col_index_num 参数小于 1,或者 lookup_value 超过了 255 个字符。

解决方案:

  • 确保列号参数大于等于 1
  • 缩短查找值的长度,或者使用 INDEX+MATCH 组合

4. 返回错误的结果

原因:

  • 使用了近似匹配但第一列没有排序
  • 查找区域没有使用绝对引用,导致下拉公式时区域发生偏移

解决方案:

  • 近似匹配时确保第一列按升序排序
  • 对查找区域使用绝对引用(添加 $ 符号 —— F4按键可快捷添加):

    =VLOOKUP(F2, $A$1:$D$6, 2, FALSE)

VLOOKUP 高级技巧

掌握了基础用法后,我们来学习一些高级技巧,让 VLOOKUP 发挥更大的威力。

技巧 1:反向查找(从右向左查找)

VLOOKUP 本身只能从左向右查找,但我们可以结合 IF 函数实现反向查找。

公式写法:

=VLOOKUP(G2, IF({1,0}, B1:B6, A1:A6), 2, FALSE)

解释:

  • IF({1,0}, B1:B6, A1:A6) 会创建一个临时数组,将 B 列(姓名)和 A 列(员工编号)交换位置
  • 这样我们就可以根据姓名查找员工编号了

技巧 2:多条件查找

VLOOKUP 本身只支持单条件查找,但我们可以结合 & 运算符实现多条件查找。

公式写法:

=VLOOKUP(F2&G2, $A$1:$D$6, 4, FALSE)

注意:

  • 查找区域的第一列必须是两个条件的组合
  • 或者使用辅助列,将两个条件合并成一列

技巧 3:返回多列结果

我们可以使用数组公式一次性返回多列结果。

公式写法(Excel 365 及以上版本):

=VLOOKUP(F2, A1:D6, {2,3,4}, FALSE)

解释:

  • {2,3,4} 表示同时返回第 2、3、4 列的数据
  • 输入公式后按 Enter 键即可自动填充到相邻单元格

技巧 4:通配符查找

VLOOKUP 支持使用通配符进行模糊查找:

  • *:匹配任意多个字符
  • ?:匹配任意单个字符

示例:查找所有姓 "张" 的员工的工资

=VLOOKUP("张*", A1:D6, 4, FALSE)

✅最后小结:

掌握 VLOOKUP 不仅仅是学会了一个函数,更是学会了一种数据处理的思维方式。

当你能够熟练运用 VLOOKUP 及其替代方案时,你会发现原本繁琐的数据处理工作变得如此简单和高效。

希望这篇指南能够帮助你彻底掌握 VLOOKUP,让它成为你工作中的得力助手。

赞(0)
未经允许不得转载:171主机测评 » 【Excel公式03】VLOOKUP|Excel查找函数的扛把子,学会了它你才算入门
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址