Eine idee mit arrays. ungetestet.!!
Sub x()
Dim x&, y&, arr, arr2
Dim List1Auswahl As String
List1Auswahl = UserForm1.List_Mat.List(UserForm1.List_Mat.ListIndex, 0) 'erste Spalte
With ThisWorkbook.Worksheets("Stammdaten")
arr = .Range("A1:K" & .Cells(Rows.Count, "K").End(xlUp).Row)
End With
UserForm1.List_Into.Clear
ReDim arr2(1 To 4, 1 To UBound(arr))
For x = LBound(arr) To UBound(arr)
If arr(x, 11) = List1Auswahl Then
y = y + 1
ReDim Preserve arr2(1 To 4, 1 To y)
arr2(1, y) = arr(x, 1)
arr2(2, y) = arr(x, 2)
arr2(3, y) = arr(x, 5)
arr2(4, y) = arr(x, 4)
End If
Next x
ReDim Preserve arr2(1 To 4, 1 To y)
Select Case y
Case 0: UserForm1.List_Into.AddItem = "Keine Daten"
Case 1: UserForm1.List_Into.List = arr2
Case Else: UserForm1.List_Into.Column = arr2
End Select
End Sub
|