Thread: Array Functions
View Single Post
  #7   Report Post  
Harlan Grove
 
Posts: n/a
Default

"Jaytee" wrote...
=INDEX(Entry!J$4:J$999,SMALL(IF(Entry!$A$4:$A$999 =$B$4,
ROW($1:$995)),ROW(1:1)))

The idea was to input data onto the Entry sheet, and access it on the
Owners sheet by selecting a name from a drop down list in B4 of the
owners sheet.

....

INDEX has odd semantics in array formulas. Unlike OFFSET, INDEX will only
return arrays when either its first or second argument is zero. Also, ROW
always returns an array, so using ROW is different arguments to SMALL could
also cause problems.

If you want the value in Entry!J4:J999 corresponding to the first entry in
Entry!A4:A999 matching B4 in the calling formula's worksheet, use

=VLOOKUP($B$4,Entry!$A$4:J$999,10,0)

If you want the value in Entry!J4:J999 corresponding to the k_th entry in
Entry!A4:A999 matching B4, use

=OFFSET(Entry!J$4,SMALL(IF(Entry!$A$4:$A$999=$B$4,
ROW(Entry!$A$4:$A$999)),k)-ROW(Entry!$A$4),0)