Return Lookup Array Lookup Value Expected Output
A 2 1 NA
B 2 2 A, B, C
C 2 3 D,E
D 3 4 F, G
E 3 5 NA
F 4 6 NA
G 4 7 NA
这就是表格的样子。第四列是我期望的返回值。我在第2列的第3列中使用查找值,输出在第4列。
答案 0 :(得分:0)
由于您需要在同一个单元格中返回多个值,因此您可能需要一些VBA:
Function doLookup(lookupValue As String) As String
Dim searchRange As Range
Dim searchCell As Range
Dim searchValue As String
'What range are we searching here?
Set searchRange = Sheet1.Range("B1:B" & Sheet1.Range("B" & Sheet1.Rows.Count).End(xlUp).Row())
'Loop through each cell in the range
For Each searchCell In searchRange
searchValue = searchCell.Value
'If we find a match...
If searchValue = lookupValue Then
'If this is not the first thing in the list, then add a comma
If doLookup <> "" Then doLookup = doLookup & ","
'Add the thing we found
doLookup = doLookup & searchCell.Offset(0, -1).Value
End If
Next searchCell
End Function
将其粘贴在一个新模块中,然后在D1中使用公式=DoLookup(C1)
,它应该吐出你想要的东西。如果列表非常大,那么不要期望这个太过分了。