Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Filter mit Schleife durchlaufen

Filter mit Schleife durchlaufen
25.04.2007 13:42:01
Philip
Hallo Experten,
ich hab folgende Frage:
Wie kann ich einen Autofilter per Schleife durchlaufen? Ich hab versucht "Criteria" per index durchlaufen zu lassen, das funktioniert aber nicht:
For i = 1 To 100
Selection.AutoFilter Field:=1, Criteria1:=i
Next i
Hat jemand eine Ahnung, wie oder ob das irgendwie funktioniert?
Vielen Dank im Voraus.
Gruss,
Philip

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Filter mit Schleife durchlaufen
25.04.2007 14:49:00
Jan3
Hi Philip,
In einem Tabellenblatt z.B. Tabelle 1 in der Spalte A die Filterkriterien reinschreiben und dann über folgendes
Makro filtern:

Sub Filtern()
Selection.AutoFilter
For z = 1 To 100
Kriterium = Worksheets("Tabelle1").Cells(z, 1)
Selection.AutoFilter Field:=1, Criteria1:=Kriterium, Operator:= _
xlAnd
Next
End Sub


Jan

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Autofilter in Excel per Schleife durchlaufen


Schritt-für-Schritt-Anleitung

Um einen Autofilter in Excel per Schleife durchlaufen zu können, kannst du das folgende VBA-Makro verwenden. Achte darauf, dass die Filterkriterien in der angegebenen Tabelle (z.B. „Tabelle1“) in einer Spalte stehen. Hier ist ein einfaches Beispiel:

Sub Filtern()
    Selection.AutoFilter
    For z = 1 To 100
        Kriterium = Worksheets("Tabelle1").Cells(z, 1)
        Selection.AutoFilter Field:=1, Criteria1:=Kriterium, Operator:= xlAnd
    Next
End Sub
  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Erstelle ein neues Modul über Einfügen > Modul.
  3. Füge den obigen Code in das Modul ein.
  4. Schließe den VBA-Editor und kehre zu Excel zurück.
  5. Wähle den Bereich aus, den du filtern möchtest.
  6. Führe das Makro aus.

Häufige Fehler und Lösungen

  • Fehler: „Laufzeitfehler 9: Index außerhalb des gültigen Bereichs“

    • Lösung: Stelle sicher, dass die Tabelle „Tabelle1“ existiert und die Zellen korrekt befüllt sind.
  • Fehler: Autofilter funktioniert nicht wie gewünscht

    • Lösung: Überprüfe, ob der Autofilter im gewählten Bereich bereits aktiviert ist. Du kannst Selection.AutoFilter verwenden, um sicherzustellen, dass der Filter aktiv ist.

Alternative Methoden

Falls du keinen VBA-Code verwenden möchtest, kannst du auch die Filteroptionen manuell nutzen:

  1. Wähle den Datenbereich aus.
  2. Gehe zu „Daten“ > „Filter“ > „Autofilter“.
  3. Wähle die gewünschten Filterkriterien aus der Dropdown-Liste.

Diese Methode ist weniger flexibel, aber für einfache Filtervorgänge oft ausreichend.


Praktische Beispiele

Ein praktisches Beispiel könnte wie folgt aussehen:

Wenn du eine Liste von Verkäufen hast und die Verkäufe nach Verkaufszahlen filtern möchtest, könntest du die Verkaufszahlen in „Tabelle1“ in Spalte A eintragen. Das Makro würde dann durch diese Kriterien iterieren und die Daten entsprechend filtern.

Sub FilternVerkaufszahlen()
    Selection.AutoFilter
    For z = 1 To 50 ' Angenommen, du hast 50 Verkaufszahlen
        Kriterium = Worksheets("Tabelle1").Cells(z, 1)
        Selection.AutoFilter Field:=1, Criteria1:=Kriterium
    Next
End Sub

Tipps für Profis

  • Nutze die Criteria1-Option, um mehrere Kriterien zu kombinieren, indem du die Operator-Eigenschaft anpasst (z.B. xlOr für ODER-Bedingungen).
  • Teste dein Makro mit einer kleineren Anzahl von Kriterien, bevor du es auf große Datenmengen anwendest.
  • Speichere deine Excel-Datei im .xlsm-Format, um sicherzustellen, dass das Makro erhalten bleibt.

FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, um mehr als 100 Kriterien zu filtern? Du kannst die Schleife einfach anpassen, indem du den Wert in For z = 1 To 100 erhöhst, je nachdem, wie viele Kriterien du hast.

2. Funktioniert das Makro in allen Excel-Versionen? Das Makro sollte in allen modernen Excel-Versionen (Excel 2010 und höher) funktionieren. Achte darauf, dass du die Makros aktiviert hast.

3. Was mache ich, wenn der Autofilter nicht funktioniert? Überprüfe, ob du den Filter auf den richtigen Bereich angewendet hast und ob die Daten korrekt formatiert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige