使用数组在Excel中返回多个ID号

时间:2019-07-16 12:29:42

标签: arrays excel excel-formula vlookup

我正在使用Excel中的一组数据,其中包括ID号和帐号。每个ID号包含多个帐号。我想垂直返回与每个ID号关联的每个帐号。

我已经进行了研究,并提出了适用于第一个ID号但不适用于其他ID的数组公式。我已经创建了一个数据共享示例。

{=INDEX($E$2:$E$5, SMALL(IF(($H2=$A$2:$C$5), MATCH(ROW($A$2:$C$5), ROW($A$2:$C$5)), ""), ROWS($A$1:A1)))}

我得到一个#NUM!其余单元格中的错误。任何帮助将不胜感激。

sample data - formula result - desired result

sample data - formula result - desired result

1 个答案:

答案 0 :(得分:0)

像这样使用提供的数据设置:

enter image description here

在单元格H2中并向下复制的是此(常规)公式(假设ID号实际上是数字,如提供的示例数据中所示):

=IF(ROW(H1)>COUNTA($A$2:$C$5),"",SMALL($A$2:$C$5,ROW(H1)))

然后在单元格I2中并向下复制的是以下( array )公式:

=IF(H2="","",INDEX(E:E,SMALL(IF($A$2:$C$5=H2,ROW($A$2:$C$5)),COUNTIF(H$2:H2,H2))))