Excel一对多查询,简单才是硬道理
小伙伴们好啊,今天咱们说说一对多查询的问题。
如下图所示,希望返回销售部的全部人员姓名。

方法1:各版本通用 辅助列
首先在C2单元格输入以下公式,向下复制。
=IFERROR(LOOKUP(1,0/(B$1:B1=B2),C$1:C1)&”,”,””)&A2

再从D3单元格输入以下公式,得到所有人员姓名:
=LOOKUP(1,0/(D2=B2:B16),C2:C16)

方法2:各版本通用 万金油公式
D3单元格输入以下公式,按按Ctrl+Shift+回车,向下复制到出现空白为止。
=INDEX(A:A,SMALL(IF(B$2:B$16=D$2,ROW($2:$16),4^8),ROW(A1)))&””

方法3:Excel 2019公式
D3单元格输入以下公式,按Ctrl+Shift+回车
=TEXTJOIN(“,”,,IF(B$2:B$16=D$2,A2:A16,””))

方法4:Excel 2021公式
D3单元格输入以下公式,结果自动溢出到相邻区域:
=FILTER(A2:A16,B2:B16=D2)

方法5:Excel 2021公式
D3单元格输入以下公式,结果自动溢出到相邻区域:
=TOCOL(IF(B2:B16=D2,A2:A16,x),3)

方法6:Excel 365公式
D1单元格输入以下公式,结果自动溢出到相邻区域:
=GROUPBY(B1:B12,A1:A12,ARRAYTOTEXT,3,0,,B1:B12=”销售部”)

方法7:小李秘书,你来一下……
夜雨聆风