Vlookup is a formula that will change the way you use Excel. It's only downfall is that you can only use it to return values in the rows to the right side of the cell that contains your search value.
Here is a simple function that will allow you to return values to the left of the search value. Just give the function the cell with the value you want to look for, then the column you want to look in (any sheet). As the final 3rd parameter, tell it how many rows forward or back it should go to find the return value. -1 is for the value to the left of the search column and 1 is for the row to the right, etc.
This is useful when the client updates a file and the order of the text is different and you need to copy paste everything you had done previously into the new file. Assuming the client is smart enough to use text IDs that don't change, run this. Give it the ID of the text then the column in the old file where it can look for it. Then if the ID is found, it will return the value found x rows to the right/left of the ID cell. Copy paste done in just a few seconds!
Vlookup is godly and fast, so only use this if you have to get the value in a row to the left of the search column (in those weird cases where the translation is in the column to the left of the original text or the column with the text ID).
------------------------------------------------------------
Function VLookupLeft(ByVal lookup_value, _
ByVal lookup_column As range, _
ByVal return_value_column As Long)
Application.ScreenUpdating = False
With Application
VLookupLeft = .Index(lookup_column.Offset(0, return_value_column), _
.Match(lookup_value, lookup_column.Columns(1), 0), 1)
End With
Application.ScreenUpdating = True
End Function
------------------------------------------------------------