工作中,经常会遇到查找匹配的问题,如果只是一对一查找,我们使用VLOOKUP公式很快就能找到,但是,如果我们的数据源里面有多条记录对应的时候,Vlookup公式,它不能查找出来所有的结果。
1、Vlookup的短板如下所示,根据部门,查找匹配对应的员工数据
如果我们使用的公式是:
=VLOOKUP(E2,A:B,2,0)
数据源里面有两条数据,
它只会查找匹配出第一次出现的结果。

如果我们想要用VLOOKUP查找出多条结果,就必须建立辅助列:
然后输入的公式是:
=B2&COUNTIFS($B$2:B2,B2)
COUNTIFS函数第1参数是动态的数据范围,对B2来进行计数;
这样辅助列就连接了每个部门出现的次数,得到了唯一的数据列

然后我们想要查找出市场部所有的员工,就只需要分别查找匹配市场部1,市场部2,市场部3,市场部4对应的结果
所以,我们在G2单元格可以输入公式:
=VLOOKUP(F2&{1,2,3,4},A:C,3,0)

为了屏蔽错误值,我们可以再加个IFERROR公式,就可以屏蔽所有的错误值

虽然得到了我们想要的结果,但是这个过程,很复杂
2、Filter公式一对多使用FILTER公式,就非常的简单了,也不需要辅助列
当我们输入公式:
=FILTER(B:B,A:A=E2)
给对B列的结果进行筛选,条件是A列里面找E2的内容。
因为符合条件的结果有4个员工,所以都会被查找出来。
4个单元格的值被自动溢出单元格,显示在下方4个位置。

它等价于,我们在A列进行筛选市场部,然后对应B列的结果。

然后我们希望这个结果横向展示,加一个转置公式即可:输入的公式是:
=TRANSPOSE(FILTER(B:B,A:A=E2))

然后向下填充就得到了所有的结果:

关于这个小技巧,你学会了么?动手试试吧!