说起Excel中的数据查询,VLOOKUP可真是大名鼎鼎。这年头,做表格的人要是没听说VLOOKUP,喝酸奶都不好意思舔瓶盖。
VLOOKUP函数果真所向披靡吗?今天就和大家一起说说Excel中的数据查询那些事儿。
VLOOKUP函数
先说说VLOOKUP,作用嘛,就是能够实现从左到右的数据查询。
用法是:
VLOOKUP(要找谁,在哪个区域找,返回第几列的内容,精确匹配还是近似匹配)
先从查询区域最左侧列中找到查询值,然后返回同一行中对应的其他列的内容。
例如下图中,要根据E3单元格中的领导,在B~C列的对照表中查找与之对应的秘书姓名。
F3单元格公式为:
=VLOOKUP(E3,B2:C8,2,0)
公式中,“E3”是要查找的内容。
“B2:C8”是查找的区域,在这个区域中,最左侧列要包含待查询的内容。
“2”是要返回查找区域中第2列的内容,注意这里不是指工作表中的第2列。
“0”是使用精确匹配的方式来查找。
HLOOKUP函数
假如表格的结构比较特殊,VLOOKUP函数就傻眼了。
像下图中,要根据A7单元格中的领导,在2~3行的对照表中查找与之对应的秘书姓名。
B7单元格公式为:
=HLOOKUP(A7,2:3,2,0)
HLOOKUP函数是VLOOKUP异父异母的亲弟弟,作用嘛,就是能够实现从上到下的数据查询。
用法是:
HLOOKUP(要找谁,在哪个区域找,返回第几行的内容,精确匹配还是近似匹配)
先从查询区域第一行中找到查询值,然后返回同一列中对应的其他行的内容。
公式中,“A7”是要查找的内容。
“2:3”是查找的区域,不要被数字迷惑了,这种写法就是第二到第三行的整行引用而已。
在这个区域中,第一行要包含待查询的内容。
“2”是要返回查找区域中第2行的内容,注意这里不是指工作表中的第2行。
“0”是使用精确匹配的方式来查找。
LOOKUP函数
假如表格的结构再特殊点,VLOOKUP和HLOOKUP函数就都傻眼了。
像下图中,要根据E3单元格中的秘书,在B~C列的对照表中查找与之对应的领导姓名。
F3单元格公式为:
=LOOKUP(1,0/(C3:C8=E3),B3:B8)
LOOKUP函数是VLOOKUP异父异母的亲妹妹,本例中的作用嘛,是在指定的行或列中查询指定的内容,并返回另一个范围中对应位置的值。
常见用法是:
LOOKUP(要找谁,在哪行或哪列找,要返回结果的行或列)
公式中,“1”是要查找的内容。
“0/(C3:C8=E3)”是查找的区域,不要被这段公式迷惑了,这种写法是模式化的,就是0/(条件区域=查找值)。
先使用等号,将条件区域的内容与查找值进行逐一对比,返回逻辑值TRUE或是FALSE。
再使用0除以逻辑值,在四则运算中,逻辑值TRUE相当于1,FALSE相当于0。相除之后变成了一组错误值和0。
{#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!}
也就是条件区域中的某个单元格如果等于查找值,对应的计算结果就是0,其他都是错误值。
LOOKUP在这组内容中查找1的位置,找不到1就用0顶包,0的位置是2,所以最终返回第三参数B3:B8中第2个单元格的内容了。
LOOKUP函数的查找区域和返回结果区域,都是一行或一列的写法,所以可以实现任意方向的查询。
INDEX和MATCH函数
LOOKUP函数是不是就最牛了呢?NO,NO,NO,INDEX和MATCH函数表示不服。
仍以刚刚的数据为例,要根据E3单元格中的秘书,在B~C列的对照表中查找与之对应的领导姓名。
F3单元格公式为:
=INDEX(B2:B8,MATCH(E3,C2:C8,0))
MATCH函数的作用,是查找数据在一行或一列中所处的位置。
用法是:
MATCH(要找谁,在哪行或哪列找,精确匹配还是近似匹配)
公式中的MATCH(E3,C2:C8,0)部分,就是精确查找E3单元格中的小袁秘书在C2:C8中所处的位置,结果是3。
INDEX函数的作用,是根据指定的位置信息,返回数据区域中对应位置的内容。
本例中,先用MATCH函数计算出小袁秘书的位置3,再用INDEX函数返回B2:B8区域中第3个单元格的内容。
INDEX+MATCH函数二者组合,也能实现任意方向的数据查询。
函数XLOOKUP
VLOOKUP家族最近又新增了一个新函数XLOOKUP,目前这个函数还在内测阶段,但是查找功能更加强大。
借助 XLOOKUP,可以在一列中查找搜索词,并根据搜索词的位置,返回另一列中相同位置的结果,可以实现从左到右、从右到左等不同方向的数据查询。
如下图,要根据F2单元格的地区名称,查找电话区号前缀。
G2单元格公式为:
=XLOOKUP(F2,B2:B11,D2:D11)
其中F2是查找内容,B2:B11是要查找内容的区域,D2:D11是要返回内容的区域,XLOOKUP函数默认使用精确匹配方式。
XLOOKUP还自带光环,对于查找不到指定内容时,可以指定要返回的内容,而不是返回错误值。
如下图,根据B2单元格的ID查询对应的雇员姓名,如果找不到,就返回指定的内容“ID not found”。
=XLOOKUP(B2,B5:B14,C5:D14,"ID not found")
几种方法,各有特点,只有平时多学多练,遇到问题才能对症下药。每天学习一点点,小白也能变大神。
噢!评论已关闭。