Вы можете создать UDF для выполнения этого поиска.В новый модуль вашего VBE вставьте следующее:
Function getTasks(tasklist As Range, availabletasks As Range) As String
'tasklist is the incoming array in Column C
'availabletasks is the stuff in Column A
'Array for output
Dim tasks() As String: ReDim tasks(0 To 0)
'Loop through each item in taslist using an array
For Each task In Split(tasklist.Value, ", ")
'Search availabletasks
If Not availabletasks.Find(task) Is Nothing Then
'pop the array
If tasks(0) <> "" Then ReDim Preserve tasks(0 To UBound(tasks) + 1)
tasks(UBound(tasks)) = task
End If
Next
'Return what we found
getTasks = Join(tasks, ", ")
End Function
Теперь в вашей электронной таблице вы можете использовать эту функцию, как обычную формулу:
=getTasks(C1,$A$1:$A$6)
Где C1
имеетсписок, такой как A4, A25, A22, A6, A29, A42
и $A$1:$A$6
, похож на ваш пример, столбец А. Это вернет A4, A6