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

如果使用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·

