天天看点

Excel公式混合查找,一对多,一对一轻松匹配

作者:Excel自学成才

举个工作中的例子,左边是两列数据对应关系表

分别是仓库SKU和商品SKU

Excel公式混合查找,一对多,一对一轻松匹配

它们之间的关系,有的是一一对应的,但是有极少数的特殊情况,存在着一对多的关系:

Excel公式混合查找,一对多,一对一轻松匹配

需要根据仓库SKU,匹配出商品SKU信息

如果我们使用的公式是XLOOKUP查找

输入的公式是:

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

一对一查找匹配的结果都出来了,但是如果原数据中,存在多个匹配结果的时候,它只会显示出第一条结果

Excel公式混合查找,一对多,一对一轻松匹配

怎么样把多个结果全部匹配出来?

Filter+textjoin组合运用

首先,Filter公式,使用的用法是:

=Filter(查找列,查找条件=查找值)

它和XLOOKUP的区别,就是存在多条结果的时候,它全部会被查找出来

所以当我们输入公式:

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

它会有符合条件的2个结果全部列出来

Excel公式混合查找,一对多,一对一轻松匹配

所以,我们可以结合转置公式:

TRANSPOSE,输入的公式是:

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

当有多条结果符合条件的时候,它就能匹配出来

因为是数组用法,所以会自动的溢出到右边的单元格中

Excel公式混合查找,一对多,一对一轻松匹配

如果说,我们不希望单元格溢出显示,让它全部显示在E列结果里面,就可以结合TEXTJOIN公式了

输入的公式是:

=TEXTJOIN(";",TRUE,FILTER(B:B,A:A=D2))

Excel公式混合查找,一对多,一对一轻松匹配

当它的结果是一条的时候,就是一对一匹配

当它的结果是多条的时候,就会用分号连接起来

从而实现混合查找匹配

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