如下表:左边为部门及员工数据,需按照部门,来查找所有员工姓名。

在使用VLOOKUP查找匹配时,若源数据有多个值,仅会查找到第一个值,如在E2中输入公式为:
=VLOOKUP(D2,A:B,2,0)

如何才能执行一对多查询呢?咱们来理一下思路,假如,左边数据不同,而需要查找的数据也不同,此时使用vlookup可以很容易地匹配出来。

而对于一对多查询问题,就变为了,如何可以将原始表转为此表了。
首先需要处理左边数据源,建立一个辅助列,输入公式为:
=B2&COUNTIF($B$2:B2,B2),COUNTIF函数用于累计计数,从上到下,累计出现了多少次。

之后再对查找的值做处理,使用公式为:
=$E$2&COLUMN(A1),COLUMN(A1)代表A1在第几列,即第1列,之后向右填充,即可得到2,3,...

因此整体公式为:
=VLOOKUP($E$2&COLUMN(A1),$A:$C,3,0)
之后再向右填充:

若下方还需查找财务部时,需要注意查找值E2是相对引用,及屏蔽错误值,使用公式为:
=IFERROR(VLOOKUP($E2&COLUMN(A1),$A:$C,3,0),"")

以上即是关于一对多查询的小技巧。
·END·

