Wenn Sie Office 365 Excel verwenden dann diese Matrixformel haben:
=TEXTJOIN(",",TRUE,IF($A$2:$A$7 = D2,$B$2:$B$7,""))
Dies ist eine Matrixformel und muss mit bestätigt werden Ctrl-Shift-Eingabe, wenn Bearbeitungsmodus zu verlassen. Wenn es richtig gemacht wird, wird Excel {}
um die Formel setzen.
Wenn Sie dann diesen Code Excel Office 365 haben nicht an der Arbeitsmappe gebunden in einem Modul setzen und verwenden Sie wie oben beschrieben.
Function TEXTJOIN(delim As String, skipblank As Boolean, arr)
Dim d As Long
Dim c As Long
Dim arr2()
Dim t As Long, y As Long
t = -1
y = -1
If TypeName(arr) = "Range" Then
arr2 = arr.Value
Else
arr2 = arr
End If
On Error Resume Next
t = UBound(arr2, 2)
y = UBound(arr2, 1)
On Error GoTo 0
If t >= 0 And y >= 0 Then
For c = LBound(arr2, 1) To UBound(arr2, 1)
For d = LBound(arr2, 1) To UBound(arr2, 2)
If arr2(c, d) <> "" Or Not skipblank Then
TEXTJOIN = TEXTJOIN & arr2(c, d) & delim
End If
Next d
Next c
Else
For c = LBound(arr2) To UBound(arr2)
If arr2(c) <> "" Or Not skipblank Then
TEXTJOIN = TEXTJOIN & arr2(c) & delim
End If
Next c
End If
TEXTJOIN = Left(TEXTJOIN, Len(TEXTJOIN) - Len(delim))
End Function
Um sie zu erhalten in getrennten Zellen untereinander verwenden diese Formel in der ersten Zelle und abschreiben genug, um zu decken die längste Liste erscheinen:
=IFERROR(INDEX(B:B,AGGREGATE(15,6,ROW($A$2:$A$7)/($A$2:$A$7=$D$2),ROW(1:1))),"")
Danke für die schnelle Reaktion, aber ich möchte, dass die Prozesse in getrennten Zellen erscheinen, der schönste Weg für mich wäre, wenn sie unter einander erscheinen würden. –
Dann sollte man das sagen in deinem ursprünglichen Beitrag. –
@NickKuipers sehe Bearbeitungen –