7
浏览
大多数人用得最多的函数VLOOKUP函数,当面对较多数据时如何快速的查找匹配到我们需要的数据,或者根据某个字段去查找另一个字段对应的数据的时候,这个函数作用非常大。
公式基本语法
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
翻译成中文:VLOOKUP(查找值,数据表,列序数,匹配条件)
大白话解释:VLOOKUP(要找的内容,在哪个区域查找,返回第几列的内容,精确匹配还是模糊匹配)
lookup_value 为需要在数组第一列中查找的数值。可以是数值、引用或文本字符串。
table_array 为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用。
col_index_num 为 table_array 中待返回的匹配值的列序号。col_index_num 为 1 时,返回 table_array 第一列中的数值;col_index_num 为 2,返回 table_array 第二列中的数值,以此类推。如果 col_index_num 小于 1,函数 VLOOKUP 返回错误值值 #VALUE!;如果 col_index_num 大于 table_array 的列数,函数 VLOOKUP 返回错误值 #REF!。
range_lookup 为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为FALSE或0,则返回精确匹配,如果找不到,则返回错误值 #N/A。如果 range_lookup 为TRUE或1,函数 VLOOKUP 将查找近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。如果range_lookup 省略,则默认为1。
六种典型用法举例
1.普通单条件查找
例子:下图中,查找某种水果的单价,比如香蕉和荔枝的单价。
公式:=VLOOKUP(E3,$B$3:$C$8,2,0)
解释:
第一个参数:E3,要查找的内容
第二个参数:$B$3:$C$8,【$符号是锁定某一个数据,如$B$3代表锁定B列,并指定第三行,快捷键是F4】数据查询区域,注意:这里用了绝对引用(有关绝对引用的内容请查阅基础:Excel函数和公式必知必会)。
第三个参数:2,需要返回的结果在数据区域的第2列
第四个参数:0,表示精确匹配
2.多条件查找
例子:下图中,查找编号为B001,名称为苹果的水果的单价。
公式结构:{=VLOOKUP(条件1&条件2, IF({1,0}, 条件1所在列&条件2所在列, 原结果列), 2, 0)}
公式:{=VLOOKUP(E13&F13,IF({1,0},A13:A21&B13:B21,C13:C21),2,0)}
解释:多条件匹配,我们可以对参数1用E13&F13来查找,但是在数据源的A到C列没有一列是编号和水果名称的组合,这时查询报错。此时我们就需要通过IF函数来构造一个数据区域,公式为:=IF({1,0},A13:A21&B13:B21,C13:C21),可以理解为构造了两列数据,第一列是编号和水果名称列组合,第二列是单价列。此时再当作VLOOKUP函数的参数2来查找即可完成匹配,完整公式为:{=VLOOKUP(E13&F13,IF({1,0},A13:A21&B13:B21,C13:C21),2,0)},填充时我们需要同时按下SHIFT + CTRL + ENTER组合键填充为数组公式才能正确显示结果。
3.反向查找
举例:如图,根据水果名称反向查找编号
公式:{=VLOOKUP(E25,IF({1,0},B25:B30,A25:A30),2,0)}
公式结构:{=VLOOKUP(查找条件, IF({1,0}, 原查找列, 原结果列), 2, 0)}
IF函数中的{1,0}是一个常量数组,它根据判断条件返回不同的值范围,从而实现数据列的调换。
IF({1,0},B25:B30,A25:A30)的用法可以这样理解:将B25:B30的值置于条件成立的位置,而将A25:A30的值置于条件不成立的位置。这样,我们得到一个6行2列的数组,其中原来B列的数据现在位于第1列,而原来A列的数据则位于第2列。通过这种方式,两列数据的顺序得以调换,从而使得VLOOKUP函数能够按照从左到右的顺序进行查找。
4.查找不到则提示找不到数据
举例:如图,查找名称为橙子的水果的单价
公式:=IFERROR(VLOOKUP(E34,IF({1,0},B34:B39,A34:A39),2,0),"找不到数据")
IFERROR函数可以把产生错误值的公式显示指定值,详细用法见IFERROR函数及其两种典型用法,收藏备用!
5.模糊查找(含通配符查找)
举例:如图,查找名称中包含“子”字的水果的单价
公式:=VLOOKUP("*子*",B34:C40,2,0)
6.合并单元格查找
举例:如图,查找某个国家某个人的成绩
公式:=VLOOKUP(F46,INDIRECT("B"&MATCH(E46,A46:A57,0)&":C55"),2,0)
解释:
第一参数:F46,查找表中姓名的位置
第二参数:"B"&MATCH(E46,A46:A57,0)&":C55"),数据查询区域,它是一个动态的区域。其中:
如果国家是魏国,则该参数为:B44: C55
如果国家是魏国,则该参数为:B48: C55
如果国家是魏国,则该参数为:B53: C55
第三参数:2,查找的结果在第二列
第四参数:0,表示精确匹配
7.高级教程:制作有下拉选择的查找
在水果名称处点数据-有效性-序列,来源处选择左侧表格的绝对值(用鼠标拖动即可)。在右侧查询结果单价元/斤输入公式:=VLOOKUP(E25,$B$25:$C$33,2,0)
之后在刚设置的有下拉菜单的表格右下角与查询单价的右下角出现+号的时候拖动下去自动填序即可
8.制作动态考勤表:参考如下详细教程网址