Generally speaking, when you want to do a LOOKUP with more flexability, you migrate from VLOOKUP() to INDEX(MATCH()).
INDEX(array, row_num)
This will find read down an array until the designated row number. There are other ways to use INDEX (on a matrix, reference form) but we are not concerned with them right now.
MATCH(value, array, type)
This will take a value and return the position in the array. Type is -1, 0, or 1; you will probably want to use 0, which will return only an exact match, not the next closest value (as -1 and 1 would).
So MATCH finds the position of a reference, and INDEX can take that position to return the same position in a different row, like this:
You can next the MATCH into the Index to reduce the number of cells you occupy but this set-up would require less flops.
Bookmarks