
Wer eine Datei mit der Endung CSV mit einem Doppelklick öffnen will, der erlebt oft eine böse Überraschung. Diese Dateien sind von Haus aus mit Microsoft Excel assoziert - nur: Excel kann damit eigentlich überhaupt nichts anfangen. Und so sieht man oft nur einen Kuddelmuddel, wo man sauber strukturierte Daten erwartet hat. Aber keine Sorge - gar so schlimm, wie es auf den ersten Blick scheint, ist es dann doch nicht.
CSV ist das klassische Format für den reibungslosen Austausch strukturierter Daten zwischen unterschiedliche Programmen. Der Name ist die Abkürzung für "Comma Separated Values", "kommagetrennte Werte". Ziel von CSV ist es, strukturierte Daten aus Tabellen oder Listen in einem allgemeinen Format zu speichern, das von jedem Programm gelesen und verarbeitet werden kann.
Dazu wird eine einfache ASCII-Datei angelegt. Jede Zeile der Datei entspricht dabei einer Zeile der zu exportierenden Tabelle. Die Werte der einzelnen Felder (also die Spalten der Tabelle) werden normalerweise in Anführungszeichen gesetzt und (wie der Name schon sagt) durch ein Komma getrennt.
Exportiert man etwa ein Adressbuch ins CSV-Format, dann erhält man üblicherweise eine Datei, die ungefähr so aussieht:
"Name","Vorname","Ort"
"Duck","Dagobert","Entenhausen"
"Duck","Donald","Entenhausen"
"Gans","Gustav","Erpelstett"
Eine solche Datei enthält also zum einen die Struktur und die Werte der Tabelle und liegt zum anderen in einem Format vor, das von praktisch jedem Programm auf jedem System gelesen werden kann.
Natürlich kann Excel CSV-Dateien lesen und schreiben und der Dateityp CSV ist nach der Office-Installation automatisch mit Excel verbunden. Bei einem Doppelklick auf eine CSV-Datei startet also Excel und liest die Datei ein. So weit, so gut.
Doch was dann passiert, hängt von der jeweiligen Excel-Version ab und ist alles andere als gut. Denn Excel benutzt von Haus aus eine eigene Abwandlung des CSV-Formats, das erheblich von den sonst üblichen Konventionen abweicht.
Dabei verzichtet Excel zum einen darauf, die einzelnen Werte in Anführungszeichen zu setzen. Zum anderen benutzt die Tabellenkalkulation zur Trennung zweier Werte kein Komma, sondern ein Semikolon. Das obige CSV-Beispiel sieht bei Excel also so aus:
Name;Vorname;Ort
Duck;Dagobert;Entenhausen
Duck;Donald;Entenhausen
Gans;Gustav;Erpelstett
Nur wenn die CSV-Datei in diesem willkürlich veränderten Format vorliegt, kann Excel damit problemlos etwas anfangen.
Diese Besonderheiten von Excel haben weitreichende Konsequenzen. Zum einen müssen die Hersteller anderer Programme nun spezielle CSV-Filter für Excel anbieten. Zum andern schlägt bei Excel der ansonsten so unproblematische CSV-Import fehl.
Sobald Excel eine CSV-Datei einlesen soll, in der die Werte durch ein Komma getrennt werden, erkennt Excel keine einzelnen Werte mehr. Statt dessen wird jede Zeile - also ein kompletter Datensatz - wie einen einzigen Wert behandelt. Konsequenz: Alle Werte einer Zeile werden in die erste Zelle einer Zeile gestopft. Das Ergebnis ist in aller Regel unbrauchbar und sieht mit dem obigen Beispiel ungefähr so aus:

Nun kann man sich einerseits seufzend an die Arbeit machen und die von Excel vermurkste Tabelle mühsam per Hand zu reparieren, in dem man die Werte einzeln in die korrekten Felder einträgt.
Man kann diese Arbeit allerdings auch Excel überlassen.





