VLOOKUP,一个让无数Excel用户又爱又恨的名字。说爱它,是因为一旦你真正驯服了它,它就像一匹千里马,能帮你在一堆堆的数据荒原里日行千里,把那些原本需要你加班到深夜、靠着咖啡因和意志力手动匹配的数据,在几秒钟内搞定。那种感觉,简直不要太爽。
说恨它,是因为它那看似简单的四个参数,就像四个守门的神秘人,你但凡有一个地方没弄对,它就毫不留情地甩给你一个#N/A,让你对着屏幕抓耳挠腮,怀疑人生。
今天,我就想跟你掰扯掰扯这个VLOOKUP,不是那种教科书式的、冷冰冰的定义,而是我自己在无数个深夜,踩过无数个坑之后,总结出来的一套“人话版”使用心得。
告别Ctrl+C和Ctrl+V的石器时代
想象一个场景,你手里有两张表。一张是这个月的销售记录,里面有产品ID和销售数量。另一张是产品信息总表,里面有产品ID、产品名称、单价、规格等等。现在,老板让你在销售记录表里,把每个产品ID对应的“产品名称”和“单价”给填上。
你的第一反应是什么?
是不是左手一张表,右手一张表,瞪大眼睛,先在销售记录里复制一个产品ID,然后切换到产品信息总表,Ctrl+F查找,找到了,再颤颤巍巍地把产品名称复制过来,粘贴。然后再回去,复制单价,粘贴。如果只有十条数据,行,你还能当成是锻炼眼力和指力。但如果是五千条、一万条呢?我敢打赌,不到半小时,你的眼睛就会变成血丝眼,脑子里全是浆糊,而且,你百分之百会出错。
这就是VLOOKUP要拯救你的人间疾苦。它的核心使命就一句话:根据一个共同的值,从一张表里,把相应的数据“抓”到另一张表里来。
VLOOKUP的四个灵魂拷问
要让VLOOKUP为你工作,你必须回答它四个问题。这四个问题,就是它的四个参数。我们来一个一个地拆解。
=VLOOKUP(你要找啥?, 去哪儿找?, 找到了要第几列的数据?, 要不要精确匹配?)
是不是觉得这四个参数像四座大山?别怕,我们用刚才那个例子,把它具象化。
第一个问题:你要找啥? (lookup_value)
这个太简单了。就是你用来连接两张表的那个“共同的值”。在我们的例子里,它就是销售记录表里的那个产品ID。你是要根据这个ID去找东西的,对吧?所以,这个参数,你就直接点击销售记录表里第一个产品ID所在的单元格,比如A2。
第二个问题:去哪儿找? (table_array)
这个问题是VLOOKUP的第一个大坑,也是它的命脉所在。它问的是,你要去哪个数据范围里查找?在我们的例子里,当然是那张“产品信息总表”。
但关键来了,你选择这个范围时,必须遵守一个铁律:你第一个参数里那个“要找的值”(产品ID),必须、一定、绝对要位于你所选数据范围的“第一列”!
什么意思?假如你的产品信息总表里,A列是序号,B列是产品ID,C列是产品名称,D列是单价。那么,你选的范围就不能从A列开始,必须从B列开始选,比如B2:D1000。因为你的查找依据是“产品ID”,它在B列。VLOOKUP这个函数,它是个“睁眼瞎”,它只会默认在你选定范围的第一列里,从上到下地去找你要的那个产品ID。你如果从A列开始选,它就会在A列的序号里去找产品ID,那结果自然是天差地别,错得离谱。
还有一个配套的究极重点:选完这个范围后,请立刻、马上按下键盘上的F4键,给这个范围加上$符号,把它变成绝对引用(例如$B$2:$D$1000)。为什么?因为当你设置好第一个单元格的公式,往下拖动填充时,如果不加$,这个查找范围也会跟着往下跑,你的数据源就错了,查出来的数据自然也就乱七八ದ್ದ。记住,F4是VLOOKUP的护身符。
第三个问题:找到了,然后呢? (col_index_num)
这个问题是问,当我根据产品ID,在你的查找范围里成功定位到那一行之后,你需要我把这一行里的第几列数据给你带回来?
注意,是“第几列”,一个数字。这个数字是相对于你第二步选定的范围而言的。
回到我们的例子。你第二步选的范围是B2:D1000。在这个范围里,B列是第1列,C列(产品名称)是第2列,D列(单价)是第3列。
所以,如果你想要“产品名称”,这个参数就填 2。如果你想要“单价”,就填 3。千万别想当然地填C或者D,VLOOKUP不认识字母,它只认数字。
第四个问题:要不要精确匹配? (range_lookup)
这是VLOOKUP的第二个大坑,也是无数新手翻车的地方。它只有两个选项:
- 0 或者 FALSE:代表精确匹配。意思就是,我必须找到一个和你要找的值一模一样的东西,找不到就报错(
#N/A)。 - 1 或者 TRUE:代表模糊匹配(或近似匹配)。它会在找不到精确值时,返回小于等于查找值的最大值。听着就很绕,对吧?
现在,请你听好我的建议,把它刻在脑子里:在99.9%的情况下,请你无脑地、毫不犹豫地在这里填上“0”!
为什么?因为我们平时工作中的绝大多数查找,比如根据员工工号查姓名、根据产品编码查价格、根据身份证号查信息,都需要的是一一对应的精确结果。你用模糊匹配,Excel很可能会“自作主张”地给你一个看似正确但实际错误的结果,这种错误比直接报错#N/A要可怕一万倍,因为它会悄无声息地污染你的整个数据表。
模糊匹配(填1)有它的用处,但场景非常特殊,比如计算提成等级(销售额在哪个区间对应哪个提成比例)、评定成绩(分数在哪个范围算优秀、良好)。除非你非常清楚自己在做什么,否则,请永远选择 0。
实战演练,一气呵成
好了,理论说完了,我们来把公式写出来。
假设你要在销售记录表的B2单元格填入第一个产品的名称。点击B2,输入=号,然后:
=VLOOKUP(A2, '产品信息总表'!$B$2:$D$1000, 2, 0)
我们来翻译一下这串咒语:
- A2:去帮我找销售记录表里A2单元格的这个产品ID。
- '产品信息总表'!$B$2:$D$1000:到《产品信息总表》这个工作表的
B2到D1000这个范围里去找。记住,产品ID在B列(第一列),并且这个范围我用$锁死了,往下拖公式也不会变。 - 2:如果找到了,就把那个范围里的第2列数据(也就是产品名称)给我。
- 0:我要找得一模一样的,差一个字、一个空格都不行!
回车!看到正确的产品名称出现了吗?然后把鼠标放在B2单元格右下角,变成黑色十字后,双击,整列数据瞬间填充完毕。那种从地狱到天堂的感觉,你体会一下。
如果要填充单价,公式几乎一样,只需要把第三个参数从2改成3就行了。
=VLOOKUP(A2, '产品信息总表'!$B$2:$D$1000, 3, 0)
当VLOOKUP跟你“耍脾气”
最常见的就是#N/A错误。别慌,这不一定是你的公式错了。#N/A的官方语言是“Not Available”,大白话就是“我尽力了,但真没找到”。
原因通常有几种:
- 真的没有:销售记录里的这个产品ID,在你的产品信息总表里压根就不存在。
- 格式不对:这是最阴险的。一个ID在A表里是文本格式(比如
00123),在B表里是数字格式(变成了123),在人眼看来它们是一样的,但在Excel眼里,它们是两个完全不同的东西。 - 有“隐形杀手”:单元格里藏着你看不到的空格。比如一个ID是
" P001 ",而另一个是"P001"。它们也匹配不上。
VLOOKUP的局限与未来
VLOOKUP虽强,但它有个致命的弱点:它只能向右查找。也就是说,它只能根据第一列的值,去查找它右边列的数据。如果你的产品名称在产品ID的左边,VLOOKUP就直接罢工了。
过去,我们会用更复杂的INDEX+MATCH组合函数来解决这个问题,它更灵活、更强大,但学习成本也更高。
而现在,我们有了更好的选择——XLOOKUP。如果你用的是Microsoft 365或者较新版本的Excel,我强烈建议你直接去学XLOOKUP。它就像是VLOOKUP的究极进化版,完美修复了所有VLOOKUP的痛点:可以向左查、默认就是精确匹配、使用更简单直观。
但是,学习VLOOKUP依然有巨大的价值。因为它是Excel函数世界里的“硬通货”,无论你用哪个版本的Excel,无论你的同事用什么版本的Excel,它都在那里,稳定、可靠。掌握了它,你就掌握了数据匹配这门手艺的根基。
所以,别再害怕VLOOKUP了。把它看作一个有点小脾气,但能力超强的工作伙伴。理解它的逻辑,顺着它的毛捋,它就能为你节省下大把的时间,让你告别那些毫无意义的重复劳动,去做更有创造性的工作。这,才是我们使用工具的真正意义。
【excel表格的vlookup怎么用】相关文章:
excel增长率怎么算12-05
ppt怎么把excel超链接12-05
怎么把excel转化为txt12-05
结构图怎么画excel12-05
excel怎么合并一行12-05
别跟我提打印。12-05
excel表格的vlookup怎么用12-05
excel怎么给表格加边框12-05
Excel里去掉一列,这事儿,说大不大,说小,嘿,真能要了命。12-05
excel里怎么筛选颜色的12-05
你是不是也有过这种抓狂的瞬间?12-05
电脑屏幕上,那个你再熟悉不过的Excel表格,突然开始抽风。12-05
Excel怎么画函数的图像12-05