工作中,查找匹配问题,基本上天天要用到,以前我们都会用VLOOKUP公式来处理
举个例子,根据姓名,查找匹配工资数据,我们使用的公式是:
=VLOOKUP(F2,C:D,2,0)
查找值是F2,查找数据区域是C:D列,查找对应第2列的结果,0表示精确查找
但是VLOOKUP公式,不能直接处理,从右向左查找匹配,例如,当我们想根据员工,去查找匹配工号的时候,是不好处理了,因为是从右向左匹配的;
而且,不能一对多匹配,当我们需要根据部门信息,来查找匹配出来所有的员工的时候,它也不好处理,因为它是一对多查找匹配问题:
1、Filter公式为了解决这些痛点,在最新版本里面,直接出来了Filter函数公式
它的查找原理,就是对数据进行筛选处理
所以,对于第一个问题,根据员工姓名,查找匹配工号
例如,刘备,那其实我们就是对C列进行筛选,刘备
然后对应B列的结果就是我们想要的
基本这个理论,所以FIlter只是把这个操作公式化了
等同于,我们输入公式是:
=FILTER(B:B,C:C=F2)
第1个参数就是想要的结果,B:B
第2个参数就是条件,C列里面,找F2的值
就这2个参数就把结果给匹配出来了
2、一对多匹配同样的原理,根据部门,来查找匹配员工
我们在进行筛选的时候,选择市场部,它的结果是多个值
所以显示结果是多个
我们直接使用FITER公式:
=FILTER(C:C,A:A=J2)
它可以把市场部的员工给全部显示出来,但是是竖向显示的
如果我们想要横向的展示出来,就要加一个转置公式
所以,输入的公式是:
=TRANSPOSE(FILTER(C:C,A:A=J2))
向下填充,就得到了所有部门的员工信息了
是不是很简单明了
关于这个函数公式,你学会了么?动手试试吧!