I have (what I thought was) a simple lookup table holding some exchange rates. There I am looking up values based on row and column indices.
How can I do that in an ARRAYFORMULA like this?:
=ARRAYFORMULA(INDEX(x!C2:C, F1:F))
x
is the sheet holding the values, I am interested in column C, row index being held in my column F. Single value lookup like INDEX(x!C2:C, F7) is working as expected.
But the ARRAYFORMULA sadly it's not working since INDEX is not supported in ARRAYFORMULA I guess.
vlookup
can be adapted to mimic index
functionality by making the first column of the lookup table the row number (with a suitable offset). Example:
=arrayformula(vlookup(F1:F, {row(x!C2:C) - row(x!C2) + 1, x!C2:C}, 2))
does what you tried to do with "=ARRAYFORMULA(INDEX(x!C2:C, F1:F))".
The lookup table {row(x!C2:C) - row(x!C2) + 1, x!C2:C}
has first column 1,2,3,... and the second column the range you wish to index. So, for each value from F1:F, vlookup accesses the entry of x!C2:C that index
would.