Nicely done, I was thinking along those lines too.
Here is a slightly shorter version...
=IFERROR(INDEX(Sheet1!$B:$G,IF($B$5="ALL",
SMALL(IF((MONTH(Sheet1!$E$3:$E$400)>=MONTH($B$3))*(MONTH(Sheet1!$E$3:$E$400)<=MONTH($B$4))*(YEAR(Sheet1!$E$3:$E$400)>2000),ROW(Sheet1!$E$3:$E$400)),ROWS($1:1)),
SMALL(IF((Sheet1!$C$3:$C$400=$B$5)*(MONTH(Sheet1!$E$3:$E$400)>=MONTH($B$3))*(MONTH(Sheet1!$E$3:$E$400)<=MONTH($B$4))*(YEAR(Sheet1!$E$3:$E$400)>2000),ROW(Sheet1!$E$3:$E$400)),ROWS($1:1))),COLUMN(A:A)),"")
still ARRAY entered
Bookmarks