天天看点

一对多查询,Vlookup公式落后,新函数秒杀

作者:Excel自学成才

举个例子,左边是公司的人事数据,包含部门,姓名等等

现在需要根据部门条件,把所有的数据匹配出来

因为有多个对应的值,所以是一个经典的一对多匹配问题

一对多查询,Vlookup公式落后,新函数秒杀

1、Vlookup公式

第一反应,我们会用VLOOKUP公式来解决

需要建立一个辅助列,我们在最左边插入一列,输入的公式是:

=COUNTIFS($C$2:C2,C2)&C2

COUNTIFS第一参数,第一个C2固定引用,表示向下累计进行计数

所以它会把部分分别是第几次出现,标记在最前面

这样A列就是唯一值了

一对多查询,Vlookup公式落后,新函数秒杀

在右边,手动的标记数字1,2,3,4...

然后只需要输入公式:

=VLOOKUP(G$1&$F2,$A:$D,4,0)

第一参数,用两个查找值连接起来

G1固定行标第一行

F2固定列标F列

第二参数A:D列数据固定引用

第三参数4表示,查找第4列的结果,第四参数0表示,精确查找

一对多查询,Vlookup公式落后,新函数秒杀

如果想屏蔽错误值,只需要套用一个IFERROR公式:

=IFERROR(VLOOKUP(G$1&$F2,$A:$D,4,0),"")

一对多查询,Vlookup公式落后,新函数秒杀

2、Filter新函数公式

如果是最新版本的Excel或WPS,会新增一个Filter函数公式

它可以一次性的筛选出多个结果,公式用法是:

=Filter(筛选结果,筛选条件)

所以当我们输入公式:=FILTER(C:C,B:B="销售一部")

它表示筛选结果在C列,筛选条件是B列里面是销售一部

这就把所有符合条件的给筛选出来了

一对多查询,Vlookup公式落后,新函数秒杀

如果我们想横向的展示,只需要加一个转置公式:

=TOROW(FILTER(C:C,B:B="销售一部"))

一对多查询,Vlookup公式落后,新函数秒杀

如果我们的条件是单元格中的值时,只需要输入公式:

=TOROW(FILTER(C:C,B:B=E2))

一对多查询,Vlookup公式落后,新函数秒杀

是不是更简单了,关于这个小技巧,你学会了么?动手试试吧!