DC娱乐网

Excel使用VLOOKUP公式,通过简称查找全称,你会么?

举个工作当中的例子,我们有一份员工及部门的归属清单,模拟的数据源如下所示:多个员工对应了一个部门1、提出需求现在我们的需

举个工作当中的例子,我们有一份员工及部门的归属清单,模拟的数据源如下所示:

多个员工对应了一个部门

1、提出需求

现在我们的需求是,根据某一个员工的姓名,查找它所在的部门情况:

这就是通过简称, 查找匹配出全称对应的结果。

2、错误的解答

有的小伙伴可能想到使用VLOOKUP公式的近似匹配来实现

=VLOOKUP(E2,A:B,2,TRUE)

但是这样得到的结果,肯定是错误的:

吕布这个员工,它匹配成了财务部,

大乔在左边的表格里面有数据的,它出现错误值#N/A

VLOOKUP公式的近似匹配功能,它不能用于文本的简称匹配全称

它只能用于数字的近似匹配。文本是不适用于

3、正确的解答

关于这个问题,我们要需要借助Excel里面的通配符来解决

在Excel里面,*星号,表示任何多个字符

所以我们在查找数据源的时候,可以使用公式:

=VLOOKUP("*"&E2&"*",A:B,2,0)

它就能得到所有的结果了

我们在查找值,前面,后面都连接了一个通配符

那就是只要带这个字符的都能匹配出来了

4、拓展

如果说左边的文本里面,出现2次我们的简称结果,上面的公式,它只能匹配到第一次出现的结果

例如,我们的小乔员工,同时出现在市场部,以及运营部

上述的公式,只能匹配到一个部门,那就是市场部

如果我们希望把所有匹配到的结果都显示出来的话

=ARRAYTOTEXT(FILTER(B:B,IFERROR(SEARCH(E2,A:A),0)))

首先是FILTER+SEARCH公式的经典组合,可以将A列里面包含E2的内容,对应的B列内容全部筛选出来

然后再使用ARRARYTOTEXT,将筛选出来的结果,用逗号连接起来

这样的话,如果是有多条简称对应的结果,也能匹配出来了

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