VLOOKUP查找多个符合条件的数据

原创作者 | 李锐

微信公众号 | Excel函数与公式(ID:ExcelLiRui)

个人微信号 | (ID:ExcelLiRui520)

VLOOKUP查找多个符合条件的数据

VLOOKUP是大家常用的查找引用函数,大部分同学都挺熟悉的,但当符合条件的数据有多个时你会查找吗?

当存在多个符合条件的数据时,VLOOKUP函数基础用法只能返回第一个符合条件的数据,其他就找不到了,如果想把所有符合条件的数据都返回,应该怎么办呢?

今天就来介绍一下查找多个符合条件数据的方法,即一对多查询技术。

除了本文内容,还想全面、系统、快速提升Excel技能,少走弯路的同学,请从开头二维码或文末“阅读原文”进知识店铺。

问题描述

下图数据源中,左侧AB两列为著作和里面的人物,现在要求根据D2选择的著作,将所有符合条件的数据都返回到E列。

由于每本著作中都包含多个人物,如果使用vlookup直接查询,只能返回第一个人物,如果想要借助Excel公式自动计算将所有该著作人物返回,应该怎么写公式呢?

方案一、多函数组合嵌套助攻VLOOKUP

在E2单元格输入以下数组公式,按Ctrl+Shift+Enter

=IF(COUNTIF(A$2:A$11,D$2)<ROW(A1),"",VLOOKUP(D$2&ROW(A1),IF({1,0},A$2:A$11&COUNTIF(INDIRECT("A2:A"&ROW($2:$11)),A$2:A$11),B$2:B$11),2,))

这样就可以实现一对多查找,当著作变换后,人物自动更新。

虽然用VLOOKUP这个公式可以解决问题,但过程太过繁杂。

下面咱们换个思路,继续向下看方案二。

方案二、经典数组套装INDEX+SMALL+IF组合

在E2单元格输入以下数组公式,按Ctrl+Shift+Enter

=INDEX(B:B,SMALL(IF(A$2:A$11=D$2,ROW($2:$11),4^8),ROW(A1)))&""

推荐使用方案二,同学们可以在工作中直接套用公式,解决一对多查询问题。

(0)

相关推荐