拿着一列工号去另一张表里找部门,几百行数据肉眼对着找能把人找崩溃。vlookup函数的用法一句话概括:在区域的第一列里找你指定的值,找到后返回同一行第N列的内容。

四个参数分别是什么

完整写法是VLOOKUP(查找值,查找区域,返回第几列,匹配方式)。前三个好理解,第四个参数新手最容易栽:写FALSE或0是精确匹配,写TRUE或1是近似匹配。日常查数据基本都用精确匹配,要是不写这个参数,函数默认按近似匹配算,结果时对时错,这是最常见的坑。

一个能直接抄的例子

假设A到C列是员工表,A列工号、B列姓名、C列部门,E2单元格里输了一个工号,要在F2查出它的部门:

=VLOOKUP(E2,A:C,3,0)

意思是拿E2的值去A列找,找到后返回区域里第3列也就是C列的内容,末尾的0代表精确匹配。公式选中往下拖,整列都能批量查出来。

跨表查数据怎么写

两张表的场景更常见,比如在Sheet1里拿A列工号去Sheet2里查姓名:

=VLOOKUP(A2,Sheet2!B:D,2,0)

区域写成Sheet2!B:D,表示到Sheet2工作表的B到D列找。注意区域第一列必须是工号所在列,B:D里B列是工号,返回第2列就正好是姓名。

查不出来时按这个顺序排查

  • 返回#N/A:第一列里没有这个值。最常见的原因是一边是文本格式的数字、另一边是数值格式,用分列功能把两边统一。
  • 返回#REF!:第三个参数填的列数超过了区域的总列数。
  • 结果不对劲:多半是第四个参数没写,或者查找列不在区域的第一列。

两个小技巧收尾:查姓名这类文本时,查找值里可以用星号当通配符,张*能匹配所有张开头的内容,前提是精确匹配模式;vlookup只能从左往右查,要拿右边列反查左边,得用INDEX加MATCH组合,或者新版Excel里的XLOOKUP。记住第四参数填0,vlookup函数的用法就掌握了大半。