Excel VLOOKUP函数怎么查询一个值返回多个结果

如题所述

VLOOKUP函数查询一个值返回多个结果”的操作步骤是:

1、打开Excel工作表;

2、由题意可知,A列存在着多个相同的项目,而VLOOKUP函数通常只返回精确匹配到的首个条件,并返回对应的数据,而无法返回多个相同条件所对应的数据;这就需要通过辅助列的形式,将多个相同的条件按出现的先后编号,并被后面的查找条件所引用;

3、在A列插入一列辅助列,在A2单元格输入以下公式,然后向下填充公式

=B2&COUNTIF(B$2:B2,B2)

公式表示:在B2单元格内容后连接其出现的次序编号

4、在F2单元格输入以下公式,然后向下填充公式

=IFERROR(VLOOKUP(E$2&ROW(A1),A:C,3,0),"")

公式表示:在查找条件E2单元格后连接行号ROW(A1),以此作为查找条件,与辅助列中的对应单元格内容进行精确匹配,并返回对应第3列(C列)的数据;多余行号不再能匹配数据时,返回空。

5、根据需要,隐藏A列辅助列,实现美观效果;

6、通过建立辅助列的方式,可以不使用INDEX+SMALL+IF数组公式,就可实现数据筛选,但需要注意次序编号公式COUNTIF(B$2:B2,B2)中的绝对引用符号。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-30

  VLOOKUP函数只能返回一个结果,如果想要一对多查询,可以使用其他函数,看下边例子,将部门为A的姓名列举到E列:

  一、一个单元格放一个名字:E2公式=IFERROR(INDEX(B:B,SMALL(IF(A:A=D$2,ROW(A:A)),ROW(A1))),""),数组公式,三键结束;

  二、将A部门的姓名放在E2单元格中,用逗号隔开:首先将数据按部门排序,然后在E2公式=MID(SUBSTITUTE(PHONETIC(OFFSET(A1,MATCH(D2,A2:A12,),,COUNTIF(A:A,D2),2)),D2,","),2,99),数组公式,三键结束。

第2个回答  2016-08-13

用VLOOKUP函数不可能返回多个结果。

    查找值不唯一返回第一个匹配值,对应的索引值。

    在同一个单元格内不可能把所有匹配的结果都返回。

    所以你应该用函数 LARGE(array,k)配合,sum(if(()))进行索引,或OFFSET等函数。

第3个回答  2016-08-09
多写几个VLOOKUP函数公式,都 是查找某一个值 的,但对应输出 的区域不同。本回答被提问者采纳
第4个回答  2019-08-21
用数据透视表轻松解决!