You can use indirect() to turn a string into a reference (e.g. =VLOOKUP("25NN2",indirect(W56),3,FALSE)), but if you use it a lot Excel will grind to a halt (even with a really good computer) as it is a very memory-intensive function.
More often than not you can use more efficient functions in place of indirect.
hth
Bookmarks