ich habe eine Liste mit Artikeln, und möchte hier bei einigen Artikeln auf das Zubehör verweißen. Dies mache ich indem ich die ID in die Zelle Zubehör eintrage.
A = ID
B = Zubehör
Der Artikel mit der ID 5 hat z.b. die ID´s "6, 17, 25" als Zubehör. Wenn ich die Zelle mit dem Zubehör der ID 5 markiere und den CommandButton2 drücke soll er mir die Tabelle auf die ID´s 6, 17 und 25 Filtern. Das Funktioniert soweit mit nachfolgendem Code, allerdings nur wenn die Anzahl der Strings z() mit denen bei Filter setzen übereinstimmt.
Ich habe mir überlegt die Kommas zu zählen und daraus dann über If die richtige Anzahl auszuwählen, allerdings ist dies ja haufenweise Code je nachdem wie viele Zubehörartikel eingetragen sind. Es geht doch bestimmt auch smarter die Strings in den Filter zu bekommen?
Private Sub CommandButton2_Click()
Dim Zub1 As String
Dim Zub2 As String
Dim i As Integer, z() As String
'Die Zubehör ID´s auslesen
Zub1 = ActiveCell
Zub2 = Replace(Zub1, " ", "")
z = Split(Zub2, ",")
For i = 0 To UBound(z)
Debug.Print i, z(i)
Next
'Filter setzen
ActiveSheet.ListObjects("Tabelle2").Range.AutoFilter Field:=1, Criteria1:= _
Array(z(0), z(1)), Operator:=xlFilterValues
End Sub
lg Asce243