Thanks bakerman2. I modified it some to account for values that aren't found, but it is working pretty well now.
Function vLookupElement(LookupCell As Range, Seperator As String, ReferenceTable As Range, ColumnIndexNumber As Long, ValueIfNotFound As String) As String
Dim LookupCellArray As Variant
Dim v
Dim i As Integer
Dim ReturnValue
LookupCellArray = Split(LookupCell, Seperator)
ReturnValue = ""
For i = 0 To UBound(LookupCellArray)
If IsNumeric(LookupCellArray(i)) Then
v = CLng(LookupCellArray(i))
Else
v = LookupCellArray(i)
End If
'MsgBox (v & "-" & LookupCell)
If IsError(Application.VLookup(v, ReferenceTable, ColumnIndexNumber, False)) Then
ReturnValue = ReturnValue & Seperator & ValueIfNotFound
Else
ReturnValue = ReturnValue & Seperator & Application.VLookup(v, ReferenceTable, ColumnIndexNumber, False)
End If
Next i
vLookupElement = Mid(ReturnValue, 2)
End Function
Bookmarks