Eine CSV-Datei zu filtern sind zwei Aufgaben, die oft für eine gehalten werden: nur die passenden Zeilen anzeigen und nur diese Zeilen als neue Datei speichern. Das Erste können alle Tools gut. Beim Zweiten lauern die Fallen, denn eine Tabellenkalkulation, die 40 gefilterte Zeilen zeigt, speichert bereitwillig alle 40.000.
Die schnelle Antwort
- Passende Zeilen ansehen: Excel oder Sheets, Daten → Filter, Werte auswählen.
- Nur passende Zeilen speichern: filtern, die sichtbaren Zeilen markieren, in ein neues Blatt kopieren und dieses speichern. Oder ein Tool nutzen, das das gefilterte Ergebnis direkt schreibt.
- Große Datei oder wiederkehrende Aufgabe: ein einziger Befehl,
csvgrep,mlroder DuckDB, siehe unten. - Auf dem Handy: eine CSV-App mit echtem Filterbereich, damit du nicht den Umweg über eine umgewandelte Tabelle gehen musst.
In Excel
- Klicke in eine beliebige Zelle der Daten und drücke Strg+Umschalt+L (⌘+Umschalt+F auf dem Mac) oder wähle Daten → Filter.
- Wähle über den Pfeil in der Spaltenüberschrift Werte aus, oder nutze Zahlenfilter / Textfilter für Bedingungen wie größer als oder enthält.
- Kombiniere Filter über mehrere Spalten: Jeder engt das Ergebnis weiter ein.
So speicherst du nur die gefilterten Zeilen: Markiere den sichtbaren Bereich, kopiere ihn, füge ihn in ein neues Blatt ein und speichere dieses als CSV. Wenn du einen Bereich mit AutoFilter kopierst, kopiert Excel nur die sichtbaren Zeilen.
Die Falle: Speicherst du das gefilterte Blatt selbst als CSV, werden alle Zeilen geschrieben, auch die ausgeblendeten. Der Filter ist eine Ansicht, keine Änderung der Daten.
ODER über mehrere Spalten (Zeilen, in denen das Land Deutschland ist oder der Umsatz über 10.000 liegt) geht mit dem AutoFilter nicht, der Spalten nur mit UND verknüpft. Nutze Daten → Erweitert mit einem Kriterienbereich, in dem Bedingungen in getrennten Zeilen mit ODER verknüpft werden, und aktiviere An einen anderen Ort kopieren, um das Ergebnis in einem Schritt woanders abzulegen.
Und weil es eine CSV-Datei ist: Wenn sie IDs, Postleitzahlen oder lange Zahlen enthält, öffne sie über einen Import statt per Doppelklick. Sonst sind die Werte, nach denen du filterst, womöglich schon verändert. Siehe so verhinderst du, dass Excel deine CSV-Daten verändert.
In Google Sheets
Daten → Filter erstellen funktioniert wie in Excel. Für diese Aufgabe hat Sheets aber etwas Nützlicheres, die Funktion FILTER, die die passenden Zeilen an anderer Stelle ausgibt und aktuell hält:
=FILTER(A2:F, C2:C="Europe", E2:E<2000)
Jede weitere Bedingung wird mit UND verknüpft. Für ODER addierst du sie: (C2:C="Europe")+(C2:C="Asia"). Setze die Formel in ein neues Tabellenblatt, und dieses Blatt ist deine gefilterte Datei: Datei → Herunterladen → CSV, während es aktiv ist.
In der Kommandozeile
Für Dateien, die für eine Tabellenkalkulation zu groß sind, oder einen Filter, den du jede Woche ausführst, ist ein Befehl schneller als Klicken und liefert jedes Mal dasselbe Ergebnis.
grep ist verlockend und falsch. Es findet Text irgendwo in der Zeile, also trifft grep Europe auch eine Zeile, deren Notiz „not Europe“ lautet. Es verwirft die Kopfzeile. Und awk -F, trennt an jedem Komma, auch an denen in Feldern in Anführungszeichen. Nimm ein Tool, das CSV versteht.
csvkit, exakter Treffer oder Muster in einer Spalte:
csvgrep -c country -m "Germany" in.csv > germany.csv
csvgrep -c email -r "@example\.com$" in.csv > example.csv
Miller, für Bedingungen:
mlr --csv filter '$country == "Germany" && $revenue > 10000' in.csv > out.csv
DuckDB, für alles, was sich in SQL ausdrücken lässt, und für Dateien jeder Größe:
duckdb -c "COPY (SELECT * FROM 'in.csv' WHERE country = 'Germany' AND revenue > 10000) TO 'out.csv'"
Alle drei behalten die Kopfzeile, beachten die Anführungszeichen und schreiben nur die passenden Zeilen. Die Anleitung zu SQL auf einer CSV-Datei geht mit DuckDB weiter.
Filterfehler, die die falschen Zeilen liefern
Jeder dieser Fehler liefert ein plausibel aussehendes Ergebnis, und genau das macht sie gefährlich.
- Groß-/Kleinschreibung und Leerzeichen.
Germany,germanyundGermany(mit Leerzeichen am Ende) sind für die meisten Filter drei verschiedene Werte. Sieh dir die eindeutigen Werte der Spalte an, bevor du nach einem filterst. - Zahlen als Text.
revenue > 10000vergleicht Text, wenn die Spalte Text ist, und"9000" > "10000"stimmt alphabetisch. Achte darauf, dass das Tool die Spalte als Zahlen erkennt. - Datumsangaben in gemischten Formaten.
03/04/2026ist in einem Export der März und in einem anderen der April. Filtere nach einer Datumsspalte erst, wenn du geprüft hast, welches Format vorliegt. - Leere Zellen. Ist eine leere Zelle null, unbekannt oder nicht zutreffend? Filter schließen leere Zellen bei „kleiner als“-Bedingungen meist stillschweigend aus.
Auf dem Handy
Eine CSV-Datei auf dem Handy in eine Tabelle umzuwandeln, um sie zu filtern, bringt alle oben genannten Probleme plus einen kleinen Bildschirm. Eine CSV-App mit eigenem Filter arbeitet direkt auf der Datei, so wie sie ist.
In Smart CSV Viewer öffnet Filter ein Fenster über der Tabelle. Du fügst Bedingungen pro Spalte hinzu; die Operatoren richten sich nach dem Typ der Spalte, eine Zahlenspalte vergleicht also Zahlen und eine Datumsspalte Datumsangaben. Die Schaltfläche zeigt dir vorab, wie viele Zeilen übrig bleiben, Apply · 4 rows, bevor du bestätigst. Für den schnellen Fall hältst du eine Zelle gedrückt und wählst Filter by this value.


Edit as SQL macht aus den Bedingungen eine Abfrage, die du von Hand ändern kannst. Um das Ergebnis woanders zu verwenden, markierst du die Zeilen und kopierst sie: Die Kopie folgt deinem Filter und wird in eine Tabellenkalkulation als echte Zellen eingefügt. Du kannst Zeilen auch in normalen Worten über den KI-Assistenten anfragen, der nur deine Spaltennamen sendet.
Ein Filterbereich, gebaut für CSV auf iPhone und Android: typisierte Bedingungen, die Anzahl der passenden Zeilen vor dem Anwenden, SQL, wenn du es willst, und nichts wird hochgeladen.
Was es kannBedingungen mit den Gruppen match any oder match none zu kombinieren ist eine Pro-Funktion; einfache UND-Bedingungen sind kostenlos.