夜雨聆风学习资料网

ARTICLE · 1124763

Excel VLOOKUP函数怎么用?一篇讲透精确查找与模糊匹配

Excel VLOOKUP函数怎么用?一篇讲透精确查找与模糊匹配

VLOOKUP 是 Excel 里使用频率最高的查找函数,一句话说清它的作用:拿一个值,到指定区域的第一列里去找,找到后返回同一行上你指定列的内容。这篇文章用一份员工表和一张提成对照表,把 VLOOKUP 的精确查找与模糊匹配两种模式、四个参数、常见坑一次讲透,你照着改单元格地址就能直接用。

一、先看懂 VLOOKUP 的四个参数

标准写法:=VLOOKUP(查找值, 查找区域, 返回列号, 匹配方式),四个参数的含义如下:

  • 查找值
    :你要找的内容,比如 A2 里的工号。
  • 查找区域
    :包含查找列和返回列的矩形区域,例如 员工表!$A$2:$D$100。
  • 返回列号
    :从查找区域的第一列往右数,目标内容在第几列就写几。
  • 匹配方式
    :写 0 或 FALSE 是精确匹配,写 1 或 TRUE 是模糊匹配,省略不写默认为 1。

假设 A 列是工号、C 列是姓名,要根据 A2 的工号取出姓名,公式就是:=VLOOKUP(A2,员工表!$A$2:$D$100,3,0)。这里的 3 表示姓名在区域第 3 列。

二、精确匹配:查工号、查单价、查库存

第四个参数写 0,表示必须一模一样才算匹配上,这是日常最常用的场景。推荐按下面的步骤操作:

  1. 在结果单元格输入 =VLOOKUP(,用鼠标点一下要查找的工号单元格。
  2. 切到数据所在的工作表,从查找列开始拖选整块数据区域。
  3. 按 F4 键把区域变成绝对引用(如 $A$2:$D$100),避免下拉公式时区域跟着跑偏。
  4. 输入返回列号和 0,回车确认,再双击单元格右下角的填充柄复制到整列。
  5. 如果精确匹配返回 #N/A,先别急着改公式,多半是查找值和源数据的格式不一致(文本型数字对数值),或者两边多了空格。

三、模糊匹配:按区间算等级、算提成

第四个参数写 1 时,函数找不到完全相同的值,就会返回小于等于查找值的最大值,也就是我们常说的区间匹配。使用它有两个前提:

  1. 查找区域的首列必须按升序排列,从小到大。
  2. 对照表里只写每个区间的下限,不要写上限。
  3. 举例:在 F1:G4 建立提成对照表,F 列依次填 0、10000、30000、60000,G 列对应 3%、5%、8%、12%。A2 是某笔销售额,要算提成比例,公式写成:

=VLOOKUP(A2,$F$1:$G$4,2,1)。销售额 25000 落在 10000 到 30000 之间,函数会命中 10000 那一行,返回 5%;销售额 80000 则命中 60000 那一行,返回 12%。

做成绩等级、快递续重、阶梯电价都是同一套思路,只要把下限表列好,公式几乎不用改。

四、精确与模糊匹配怎么选

匹配方式
写法
前提条件
典型用途
精确匹配
第四参数写 0
查找值唯一、两边格式一致
按工号查姓名、按编号查单价
模糊匹配
第四参数写 1
首列升序、只写区间下限
提成比例、成绩等级、阶梯计费

记住一句口诀:要找的必须全对用 0,要找的落在某个区间用 1。写公式时漏掉第四个参数,Excel 会按 1 处理,这也是很多人莫名其妙查到错误结果的根源。

五、常见问题

  • 查找值一定要落在区域的第一列,否则无法向左查找,这时请改用 INDEX+MATCH。
  • 区域范围不要整列选择,数据量大时整列引用会明显变慢。
  • 想让错误值显示成“未找到”,外套一层 IFERROR:=IFERROR(VLOOKUP(A2,员工表!$A$2:$D$100,3,0),"未找到")。

相关学习资料