Excel VBA - AutoFilter richtig einstellen?

Hallo!

ich versuche derzeit folgendes, ohne mich wirklich mit VBA auszukennen :D

Ich habe zwei Tabellen, Tabelle1 und Tabelle2. Auf Tabelle 1 habe ich mehrere Kategorie-Namen (im Beispiel die Zahlen) und möchte diese quasi "Selektieren", um damit einen Filter für meine Daten in Tabelle2 zu setzen, um dort nur die Daten zur jeweiligen gefilterten Kategorie anzuzeigen.

Zur Zeit sieht es wie folgt aus (vereinfachte Darstellung mit Zahlen als Kategorie):

Tabelle 1:

Tabelle 2 (Zahlen = Kategorie, Buchstaben = Daten):

Und mein Code

Sub Filtern()

Dim Kriterium As String Dim Counter Counter = 0

For i = 1 To 5     If Cells(i, 1) = "X" Then Kriterium = Kriterium + """" + CStr(Cells(i, 2)) + """" + ","     Counter = Counter + 1      Next i

Dim Liste As Range Set Liste = Worksheets("Tabelle2").Range("A2:B10") Liste.AutoFilter Liste.AutoFilter Field:=1, Criteria1:=(Kriterium)

End Sub

Zur Erklärung was ich mir dabei gedacht habe:

In der For-Schleife gehe ich erstmal die Tabelle 1 durch und schaue, wo ein X ist und füge dann entsprechenden Kategorie-Namen aus der Zelle daneben meinem String hinzu.

Dies scheint auch zu klappen, eine Test-Ausgabe via MsgBox hat mir das Ganze so ausgegeben wie ich wollte (so: "3","5",)

Im nächsten Schritt sage ich, wo die Daten sind die zu filtern sind und wende dann "AutoFilter" an, um den Filter zu setzen. Dabei sage ich dann, dass er in Feld 1 die Kriterien suchen soll. Als Kriterium gebe ich ihm meinen vorher erstellen String, welches er als ein Array verarbeiten soll, um alle Kriterien zu berücksichtigen.

Das Ergebnis sieht allerdings nur so aus:

Ich kenne mich wie gesagt eigentlich überhaupt nicht mit VBA aus, daher wäre gut möglich, dass mein Code ein zusammengeschuhsterer Haufen Müll ist, aber naja... :D

Sieht da jemand zufällig den Fehler?

Bild zum Beitrag
Computer, Microsoft Excel, VBA

Meistgelesene Beiträge zum Thema Microsoft Excel