如何用vlookup函数查找返回多个符合条件的结果

如何用vlookup函数查找返回多个符合条件的结果,第1张

VLOOKUP函数一般一次只能返回一个结果,本例介绍通过辅助列的方法使VLOOKUP函数查询一个值,返回这个值对应的多个结果。工具/原料Excel方法说明:在原始数据中A列有多个“张三丰”,需要提取每个“张三丰”对应的“工号”。一般情况的VLOOKUP只能返回第一个值,如下:=VLOOKUP(A8,A1:D5,2,0)在姓名列前插入一列,如下图输入公式:=COUNTIF(B$2:B2,B2)这个公式返回每个“姓名”从上到下是第几次出现,如第二个“张三丰”标记2。将A2公式改成:=B2&COUNTIF(B$2:B2,B2)这样就将B列的“姓名”和出现次数连在一起。在B8输入公式:=A8&ROW(A1)将A8值和ROW(A1)返回的1连在一起,下拉ROW(A1)会变成ROW(A2)返回2。将B8的公式修改成如下:=VLOOKUP(A$8&ROW(A1),A$1:E$5,3,0)也就是在A1:E5范围内查询“张三丰”和出现次数的文本对应第3列的工号。将公式下拉,就将所有“张三丰”对应的信息查询出来了。

Vlookup函数实现多条件查找,得将多个条件合并,并利用数组公式建立起一个同样是多条件合并后的数组作为查询区域进行查询

软件版本:Office2013

方法如下:

1查找G列和H列分别与A列和B列相同的值对应的C列的值:

2输入公式如下:

=VLOOKUP(G1&H1,IF({1,0},$A$1:$A$8&$B$1:$B$8,$C$1:$C$8),2,0)

同时按下Ctrl+Shift+Enter三键结束公式,完成数组公式

3下拉填充得到结果:

需要用到数组公式

用下面的举例来说明:

这里有两个条件,后面对应第三列唯一的数据:

2当我们需要同时满足条件一和条件二的数据的时候,就需要使用 Vlookup 的多条件查找。

在I5单元格输入数组公式:=VLOOKUP(G5&H5,IF({1,0},$A$2:$A$9&$B$2:$B$9,$C$2:$C$9),2,0) 然后按按<Ctrl+Shfit+Enter>组合键结束输入。

3随即便完成了对满足两个条件的数据查询,向下拖拽填充即可。

扩展资料

多条件查询函数的详细解释

这是vlookup对应的四个参数,首先针对上面的数组公式解释:

查找值:G5&H5,需要查找的是两个条件,但是vlookup函数只能查找一个条件,所以需要用

"&"将查找的两个条件的单元格连接起来。

数据表:IF({1,0},$A$2:$A$9&$B$2:$B$9,$C$2:$C$9)表示需要查找的数据,这里面嵌套使用了IF函数,然后以IF({1,0},这样的数组参数。

参数为数组时,会分别进行计算。先用1作为参数判断,返回$A$2:$A$9&$B$2:$B$9;然后用0作为参数判断,又返回一个结果$C$2:$C$9。两个结果重新组合一个数组:$A$2:$A$9&$B$2:$B$9在第一列,$C$2:$C$9在第二列,其中"$"是绝对引用。

这样Vlookup便能查找到两个条件。

列序数:需要查找的数据位于第二列,所以输入2。

匹配条件:精确匹配。

vlookup是一个查找函数,给定一个查找的目标,它就能从指定的查找区域中查找返回想要查找到的值。它的基本语法为:

vlookup(查找目标,查找范围,返回值的列数,精确or模糊查找)

下面以一个实例来介绍一下这四个参数的使用

例1:如下图所示,要求根据表二中的姓名,查找姓名所对应的年龄。

公式:b13

=vlookup(a13,$b$2:$d$8,3,0)

参数说明:

1

查找目标:就是你指定的查找的内容或单元格引用。本例中表二a列的姓名就是查找目标。我们要根据表二的“姓名”在表一中a列进行查找。

公式:b13

=vlookup(a13,$b$2:$d$8,3,0)

2

查找范围(vlookup(a13,$b$2:$d$8,3,0)

):指定了查找目标,如果没有说从哪里查找,excel肯定会很为难。所以下一步我们就要指定从哪个范围中进行查找。vlookup的这第二个参数可以从一个单元格区域中查找,也可以从一个常量数组或内存数组中查找。本例中要从表一中进行查找,那么范围我们要怎么指定呢?这里也是极易出错的地方。大家一定要注意,给定的第二个参数查找范围要符合以下条件才不会出错:

a

查找目标一定要在该区域的第一列。本例中查找表二的姓名,那么姓名所对应的表一的姓名列,那么表一的姓名列(列)一定要是查找区域的第一列。象本例中,给定的区域要从第二列开始,即$b$2:$d$8,而不能是$a$2:$d$8。因为查找的“姓名”不在$a$2:$d$8区域的第一列。

b

该区域中一定要包含要返回值所在的列,本例中要返回的值是年龄。年龄列(表一的d列)一定要包括在这个范围内,即:$b$2:$d$8,如果写成$b$2:$c$8就是错的。

3

返回值的列数(b13

=vlookup(a13,$b$2:$d$8,3,0))。这是vlookup第3个参数。它是一个整数值。它怎么得来的呢。它是“返回值”在第二个参数给定的区域中的列数。本例中我们要返回的是“年龄”,它是第二个参数查找范围$b$2:$d$8的第3列。这里一定要注意,列数不是在工作表中的列数(不是第4列),而是在查找范围区域的第几列。如果本例中要是查找姓名所对应的性别,第3个参数的值应该设置为多少呢。答案是2。因为性别在$b$2:$d$8的第2列中。

4

精确or模糊查找(vlookup(a13,$b$2:$d$8,3,0)

),最后一个参数是决定函数精确和模糊查找的关键。精确即完全一样,模糊即包含的意思。第4个参数如果指定值是0或false就表示精确查找,而值为1

或true时则表示模糊。这里兰色提醒大家切记切记,在使用vlookup时千万不要把这个参数给漏掉了,如果缺少这个参数默为值为模糊查找,我们就无法精确查找到结果了。

1、接下来,我们的任务是通过利用vlookup函数来实现查找同学c的成绩。为此在单元格中输入“=vlookup”,此时就会发现vlookup包括三个参数和一个可选参数。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/13495971.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-09-01
下一篇2025-09-01

发表评论

登录后才能评论

评论列表(0条)

    保存