DC娱乐网

Excel一对多匹配,Vlookup太弱,还得是新公式

我们在使用Vlookup公式进行查找匹配的时候,如果查找值有多条对应结果,那它只会返回第一次出现的结果:例如,根据部门,

我们在使用Vlookup公式进行查找匹配的时候,如果查找值有多条对应结果,那它只会返回第一次出现的结果:

例如,根据部门,查找匹配出员工姓名

我们在E2输入的公式是:

=VLOOKUP(D2,A:B,2,0)

查找值是D2,市场部

而数据源里面,市场部存在多条信息,小乔和吕布

最终的结果,只会查找到第一次出现的值,小乔

1、Vlooup公式一对多匹配

如果我们想一次性把多个结果查找出来,首先,我们要建立一个辅助列,插入一列,然后输入公式:

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

它得到的结果是部门本身字符,连接上,本身累计出现的次数

这样的话,这个辅助列就是不重复的列了

我们可以根据辅助列,来查找匹配我们想要的结果,我们在F2单元格输入公式:

=VLOOKUP(E2&{1,2,3},A:C,3,0)

最大次数为3次,所以我们只需要查找E2连接1,连接2,连接3,对应的结果

最后我们套用一个IFERROR公式,去掉错误值

输入的公式是:

=IFERROR(VLOOKUP(E2&{1,2,3},A:C,3,0),"")

便可以得到我们想要的结果

整体下来VLookup公式还是偏复杂

2、FIlter新公式秒杀

在新版本里面,出来了一个筛选公式FIlter

它的用法是:

=FILTER(筛选的结果,筛选的条件)

如果我们想要查找匹配市场部的值

本质,就是去A列里面, 筛选市场部,然后对应B列的结果

Excel新公式把这一操作公式化了

它对应的公式化是:

=FILTER(B:B,A:A=D2)

在B列里面筛选,筛选的条件是A列里面查找D2的值

但是它是竖向排列的,如果我们想要上面的结果横向排列,只需要转置一下即可

使用的公式是:

=TRANSPOSE(FILTER(B:B,A:A=D2))

然后如果我们想要查找其它部门时,只需要向下填充,就可以得到所有的结果:

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