无法根据一个条件返回多个值

时间:2019-04-18 15:53:07

标签: arrays excel vba array-formulas

我有一个工作簿。一张纸上有该路线上每个驾驶员和骑手的可打印列表,而第二张纸上的表具有每趟所有骑手的表。

1 MAIN在单元格route number中的A1下拉列表中。

表2 Rider Listtrip number中具有A:A,在rider中具有B:B的表。

我希望riders自动填充到单元格A5:A30中,如果A43溢出到A68,则自动填充。

例如,将下拉列表拉至route 14,我希望riders的所有route 14自动填充。

Rider List上的表不是静态的,因此使用偏移量获取最后一个值是我在代码正常工作后最初的想法。

我认为非数组代码会更好,因此,如果下拉列表更改,则不必重新评估数组。

我尝试了各种方法。

=INDEX('Rider List'!$B$2:$B$1398, SMALL(INDEX(($A$1='Rider List'!$a$2:$a$1398)*(MATCH(ROW('Rider List'!$b$2:$b$1398), ROW('Rider List'!$b$2:$b$1398)))+($A$1<>'Rider List"!$a$2:$a$1398)*1048577, 0, 0), ROW(A5), COLUMN(A5))

此处为部分代码-

SMALL(IF(($A$1='Rider List'!$B$2:OFFSET('Rider List'!$B$2,0,0,COUNTA('Rider List'!$B$2:$B),1),ROW('Rider List'!$B$2:OFFSET('Rider List'!$B$2,0,0,COUNTA('Rider List'!$B$2:$B),1)-MIN(ROW('Rider List'!$B$2:OFFSET('Rider List'!$B$2,0,0,COUNTA('Rider List'!$B$2:$B),1))+1,""),ROWS($A$1:A1))

要么给出了错误,要么没有按我的要求工作。

=INDEX('Rider List'!$B$2:$B$1398, SMALL(INDEX(($A$1='Rider List'!$a$2:$a$1398)*(MATCH(ROW('Rider List'!$b$2:$b$1398), ROW('Rider List'!$b$2:$b$1398)))+($A$1<>'Rider List"!$a$2:$a$1398)*1048577, 0, 0), ROW(A5), COLUMN(A5))

是我犯了错误,还是没有按照我的要求工作。

就像我上面所说的,我希望riders随着下拉菜单中选择的每条路线而动态变化。

我对excel不太满意,所以我确定我已经接近了,但不完全是我需要的位置。

0 个答案:

没有答案