Skip to content
Back to Blog
platform-pain-points

Excel zeigt fehlerhafte Zeichen in CSV? Der UTF-8 BOM Fix

2026-05-17 8 min read

Warum deine CSV-Datei überall gut aussieht, außer in Excel

Du exportierst eine CSV-Datei aus deiner Datenbank oder deinem CRM. Du öffnest sie in einem Texteditor, und sie ist perfekt. Akzentzeichen, japanische Kanji, Eurozeichen – alles da und korrekt. Dann doppelklickst du, um sie in Excel zu öffnen, und es herrscht Chaos. Du starrst auf verfälschte Zeichenketten wie 'é' statt 'é', oder '¥' statt '¥', oder eine ganze Spalte voller Fragezeichen. Die Datei selbst hat sich nicht geändert. Das Problem ist Excel. Wenn du eine CSV-Datei per Doppelklick öffnest, geht Microsoft Excel – besonders unter Windows – nicht davon aus, dass es sich um UTF-8 handelt. Es greift auf die veraltete Code-Seite deines Systems zurück. Für die meisten Menschen im Westen ist das Windows-1252 (auch CP1252). Für Benutzer in Japan ist es Shift-JIS. Wenn eine UTF-8-Datei durch eine Windows-1252-Interpretation gezwungen wird, wird jedes Zeichen, das mehr als ein Byte verwendet, verfälscht, was zu dem Kauderwelsch führt, das als Mojibake bekannt ist. Das ist kein neuer Bug. Es ist ein langjähriges Ärgernis, das Excel 2010, 2013, 2016, 2019 geplagt hat und auch 2025 noch in Microsoft 365 auftaucht. Wenn du einfach eine reine UTF-8-CSV-Datei per Doppelklick öffnest, spielst du mit dem Glück. Obwohl Microsoft in neueren M365-Builds eine bessere UTF-8-Erkennung hinzugefügt hat, ist das Verhalten extrem inkonsistent, abhängig von deinem Gebietsschema, deiner Office-Version und manchmal, so scheint es, der Mondphase. Die zuverlässige Lösung ist ein UTF-8 BOM – eine Byte Order Mark. Es ist eine spezielle, unsichtbare Drei-Byte-Sequenz (0xEF, 0xBB, 0xBF) ganz am Anfang der Datei, die als Signal für Excel fungiert und sagt: 'Hey! Diese Datei ist UTF-8, also lies sie auch so.' Excel respektiert dieses Signal, selbst in älteren Versionen. Der Rest dieses Artikels erklärt, wie du es hinzufügst, wann du es *nicht* hinzufügen solltest und wie CocoConvert es für dich erledigen kann.

Was der BOM eigentlich ist (und was nicht)

Die Byte Order Mark stammt ursprünglich aus der Welt von UTF-16 und UTF-32, wo die Byte-Reihenfolge (Big-Endian vs. Little-Endian) ein echtes Problem darstellt. Der BOM teilt einem Programm mit, in welcher Reihenfolge die Bytes vorliegen. Aber für UTF-8 ist die Byte-Reihenfolge kein Problem; sie ist immer gleich. Aus rein technischer Sicht ist der UTF-8 BOM (das Zeichen U+FEFF, kodiert als drei Bytes: EF BB BF) also völlig unnötig. Er ist unnötig, aber er wurde zum geheimen Handschlag, der Excel dazu bringt, sich zu benehmen. Wenn Excel diese drei Bytes am Anfang einer Datei sieht, wechselt es sofort in den UTF-8-Modus. Ohne sie greift es auf seine regionalen Einstellungen zurück, und du erhältst dieses bekannte Mojibake. Hier ist der Haken: Der BOM, der Excel repariert, kann viele andere Software kaputt machen. Das ist der Teil, der so viele automatisierte Datenpipelines zum Stolpern bringt. Pythons Standardfunktion `open()`, wenn du vergisst, `encoding='utf-8-sig'` anzugeben, liest den BOM als Teil deines ersten Datenfeldes. MySQLs `LOAD DATA INFILE`-Anweisung wird denken, dass der BOM Teil des Namens der ersten Spalte ist, wodurch dein Header beschädigt wird. Viele klassische Linux-Kommandozeilen-Tools wie `grep`, `awk` und `wc` kommen einfach nicht gut mit BOM-präfigierten Dateien zurecht. PostgreSQLs `COPY`-Befehl ist sogar noch strenger und wird direkt am ersten Spalten-Header fehlschlagen. Meine Faustregel ist einfach: Füge einen BOM nur hinzu, wenn du weißt, dass das Endziel der Datei ein Benutzer ist, der sie in Excel per Doppelklick öffnet. Wenn deine CSV-Datei für einen Datenbankimport, ein Python-Skript oder eine Unix-Pipeline bestimmt ist, möchtest du sauberes UTF-8 *ohne* BOM. Du kannst sie immer noch korrekt in Excel öffnen, du musst nur den Textimport-Assistenten verwenden, den wir behandeln werden.

Drei Wege, einen UTF-8 BOM manuell hinzuzufügen

Wenn du mit einer verfälschten CSV-Datei feststeckst und sie sofort beheben musst, brauchst du keinen ausgefallenen Dienst. Hier sind drei zuverlässige Wege, den BOM selbst hinzuzufügen. **Verwendung von Notepad++ unter Windows:** Das ist oft die schnellste Lösung. Öffne deine CSV-Datei in Notepad++. Gehe zum Menü `Kodierung`. Du wirst wahrscheinlich sehen, dass es bereits auf 'UTF-8' eingestellt ist. Das ist das Problem – es ist UTF-8 *ohne* den BOM. Klicke auf die Option 'In UTF-8 BOM kodieren' und speichere dann die Datei. Fertig. Die Datei hat jetzt das magische Drei-Byte-Präfix, und Excel wird sie korrekt öffnen. **Mit einem Python-Einzeiler:** Wenn du dich in einem Terminal wohlfühlst, ist dieser einzelne Befehl eine leistungsstarke Möglichkeit, jede UTF-8-Datei in UTF-8 mit einem BOM zu konvertieren. Er funktioniert auf jedem Betriebssystem mit Python 3. ``` python3 -c "open('output.csv','wb').write(b'\xef\xbb\xbf'+open('input.csv','rb').read())" ``` Dieser Befehl liest deine `input.csv` als Rohbytes, fügt die drei BOM-Bytes an den Anfang und schreibt alles in `output.csv`. Keine zusätzlichen Bibliotheken erforderlich. **Mit Excels eigenem Textimport-Assistenten:** Anstatt die Datei zu ändern, kannst du Excel einfach sagen, wie es sie richtig lesen soll. Gehe zu `Daten → Daten abrufen und transformieren → Aus Text/CSV` (in modernem Excel) oder `Daten → Externe Daten abrufen → Aus Text` (in älteren Versionen). Der entscheidende Schritt ist, die Einstellung 'Dateiursprung' im Importdialog zu finden und sie in `65001: Unicode (UTF-8)` zu ändern. Dies zwingt Excel, die richtige Kodierung zu verwenden. Der Nachteil ist gravierend: Diese Korrektur ist temporär und gilt nur für deine Importsitzung. Die nächste Person, die die Datei per Doppelklick öffnet, wird das gleiche verfälschte Durcheinander sehen. Keine dieser manuellen Methoden ist ideal für einen wiederholbaren Prozess. Hier beginnt die Automatisierung der Konvertierung, mit dem BOM als Option, wirklich Sinn zu machen.

Wie CocoConvert UTF-8 BOM bei der Dateikonvertierung handhabt

Wenn du CocoConvert verwendest, um eine Datei in eine CSV umzuwandeln – sei es aus Excel, JSON, XML oder etwas anderem –, geben wir dir die direkte Kontrolle darüber. In den Ausgabeeinstellungen findest du einen Umschalter 'UTF-8 BOM für Excel-Kompatibilität hinzufügen'. Wir lassen ihn standardmäßig ausgeschaltet, denn wie wir gesehen haben, kann der BOM in Nicht-Excel-Umgebungen genauso viele Probleme verursachen, wie er löst. Aber wenn du ihn brauchst, leg einfach den Schalter um. Für jeden Workflow, der damit endet, dass jemand in der Buchhaltung eine Datei öffnet, ist der Prozess einfach. Lade deine Quelldatei hoch, wähle CSV als Ausgabe, aktiviere den BOM-Umschalter und lade herunter. Die resultierende CSV-Datei wird sich in Excel perfekt mit einem einfachen Doppelklick öffnen, kein manueller Import-Assistent erforderlich. Diese Einstellung gilt auch für Stapelkonvertierungen. Wenn du also 50 Produktexportdateien aus einem Shopify-Store hast, kannst du sie alle auf einmal verarbeiten und alle Excel-fertig machen. Es ist wichtig, klarzustellen, was unser Tool tut und was nicht. CocoConvert kann Kodierungsprobleme, die in deiner Quelldatei 'eingebacken' waren, nicht magisch beheben. Wenn dir ein Altsystem eine CSV-Datei liefert, die bereits durch einen fehlerhaften Windows-1252-Export beschädigt wurde, werden wir unser Bestes tun, um sie zu transliterieren, aber einige Daten könnten verloren gehen. Du erhältst eine Warnung, falls das passiert. Wir raten auch nicht, ob du einen BOM brauchst; das ist deine Entscheidung, basierend darauf, wohin die Datei geht. Das Tool bietet die Option, aber du musst deinen eigenen Workflow kennen. Schließlich, wenn du ein Format konvertierst, das seine Kodierung bereits kennt, wie eine XLSX-Datei, lesen wir diese Informationen korrekt. Der BOM-Umschalter in diesem Fall dient ausschließlich dazu, die *Ausgabe*-CSV-Datei mit Excel kompatibel zu machen, nicht dazu, die Quelle zu reparieren.

Der Excel Textimport-Assistent: Wann du ihn stattdessen verwenden solltest

Manchmal ist das Hinzufügen eines BOM zu deiner CSV-Datei der falsche Schritt, und Excels eigener Import-Assistent ist der richtige. Das häufigste Szenario ist, wenn du CSV-Dateien von einem externen System erhältst, das du nicht kontrollierst. Wenn dieses System saubere UTF-8-Dateien *ohne* BOM generiert, solltest du sie nicht alle durch ein separates Tool laufen lassen müssen, nur um drei Bytes hinzuzufügen. In Excel 2016 und älteren Versionen navigiere zu `Daten → Aus Text`. Wenn der Textimport-Assistent startet, hat der erste Schritt ein Dropdown-Menü 'Dateiursprung'. Du musst dies von der Standardeinstellung (normalerweise 'Windows (ANSI)') auf `65001: Unicode (UTF-8)` ändern. Danach schließe den Assistenten wie gewohnt ab, und deine Daten werden korrekt angezeigt. In Microsoft 365 und Excel 2019 ist der Pfad `Daten → Daten abrufen → Aus Datei → Aus Text/CSV`. Dieser neuere Power Query Importer ist besser darin, UTF-8 automatisch zu erkennen, aber er ist nicht perfekt. Wenn die Vorschau falsch aussieht, finde das Dropdown-Menü 'Dateiursprung' oder 'Kodierung' im Dialogfeld und stelle es manuell auf UTF-8 ein. Die größte Einschränkung, wie wir erwähnt haben, ist, dass diese Korrektur nicht dauerhaft ist. Die Datei selbst bleibt unverändert. Wenn du sie einem Kollegen per E-Mail schickst, wird er sie per Doppelklick öffnen und den gleichen verfälschten Text sehen. Der Assistent ist ein großartiges Tool, wenn du der Einzige bist, der die Datei bearbeitet. Wenn du sie verteilst, musst du den BOM wirklich in die Datei selbst einbetten. Der Assistent ist auch die richtige Wahl, wenn deine CSV-Datei für andere Prozesse, wie einen Datenbankimport, sauber sein muss, du aber nur einen schnellen Blick in Excel werfen möchtest.

Zeichenkodierungsprobleme jenseits des BOM

Die Behebung des UTF-8 BOM-Problems löst das häufigste Excel-Zeichenproblem, aber es ist bei Weitem nicht das einzige Kodierungs-Kopfzerbrechen, das dir bei CSVs begegnen wird. Hier sind ein paar weitere Übeltäter, auf die du achten solltest. **Windows-1252 Quelldateien**: Viele ältere Systeme, insbesondere ältere ERPs und E-Commerce-Plattformen der ersten Generation, exportieren Daten immer noch in Windows-1252. Diese Kodierung verarbeitet westeuropäische Zeichen wie é, ü und ñ problemlos, aber sie versagt völlig bei Sprachen außerhalb dieses Satzes. Wenn du diese Daten mit einer UTF-8-Quelle zusammenführen möchtest, benötigst du einen echten Neukodierungsschritt, nicht nur einen BOM. CocoConvert kann dies handhaben, wenn du die Quellkodierung angibst, oder es wird versuchen, sie automatisch zu erkennen – was unsere Tests zeigen, funktioniert in etwa 94% der Fälle. Die Fehler treten bei Dateien auf, die technisch gleichzeitig in mehreren Kodierungen gültig sind. **Trennzeichen-Verwirrung**: Jeder, der eine Stunde damit verbracht hat, ein 'Kodierungsproblem' zu debuggen, nur um festzustellen, dass es ein Semikolon statt eines Kommas war, kennt diesen Schmerz. Wenn eine CSV-Datei Semikolons als Trennzeichen verwendet, dein Excel-Gebietsschema aber Kommas erwartet, werden alle Daten in die erste Spalte gepresst. Es sieht aus wie ein verfälschtes Durcheinander, aber es ist kein Kodierungsproblem. Die Lösung besteht darin, den Import-Assistenten zu verwenden und das korrekte Trennzeichen anzugeben. **Excels 'Smart Quotes' und spezielle Gedankenstriche**: Wenn Daten Microsoft Word oder Outlook durchlaufen haben, nehmen sie oft geschweifte 'Smart Quotes' und lange Gedankenstriche auf. Dies sind gültige UTF-8-Zeichen und sehen in den meisten modernen Apps gut aus, aber sie werden Datenbankabfragen und Skripte, die einfache ASCII-Interpunktion erwarten, zum Absturz bringen. CocoConvert bietet eine optionale Funktion 'Smart Quotes normalisieren' für die CSV-Ausgabe, die sie durch ihre einfachen ASCII-Versionen ersetzt. Es ist eine destruktive Änderung deiner Daten, daher machen wir es zu einer Opt-in-Funktion. **NULL-Bytes in Daten**: Einige Datenbankexporte können NULL-Bytes (0x00) in Textfelder einbetten. Diese sind ein absoluter Showstopper für fast jeden CSV-Parser auf dem Planeten. Keine Menge an Kodierungs-Magie wird eine Datei mit NULL-Bytes reparieren; sie müssen entfernt oder ersetzt werden, bevor die Datei verwendet werden kann.

Eine praktische Checkliste, bevor du eine CSV-Datei konvertierst oder öffnest

Nachdem wir uns mit Kodierungsproblemen bei Tausenden von Dateikonvertierungen herumgeschlagen haben, haben wir festgestellt, dass diese Checkliste hilft, die überwiegende Mehrheit der CSV-Zeichenprobleme zu erkennen, bevor sie überhaupt entstehen. **Bevor du aus einem Quellsystem exportierst:** Suche nach einer Kodierungsoption. Moderne Plattformen wie Salesforce, HubSpot und Shopify lassen dich alle UTF-8 für Exporte wählen. Nutze es. Wenn die einzige Option 'Standard' oder 'Systemkodierung' ist, sei misstrauisch. Öffne die Ausgabedatei in einem Texteditor wie VS Code oder Notepad++, der die Kodierung anzeigt, bevor du sie an jemanden sendest. **Bevor du eine CSV-Datei in Excel öffnest:** Frage dich: Hat diese Datei einen BOM? In VS Code wird die Kodierung direkt in der Statusleiste angezeigt. In Notepad++ überprüfe das Kodierungsmenü. Wenn dort 'UTF-8' steht und du Excel verwenden musst, hast du die Wahl, selbst einen BOM hinzuzufügen oder den Import-Assistenten zu verwenden. Niemals einfach doppelklicken und auf das Beste hoffen. **Bevor du eine CSV-Datei einem Skript oder einer Datenbank zuführst:** Achte auf einen BOM, besonders wenn die Datei von einem Windows-Benutzer stammt. In Python ist die Verwendung von `encoding='utf-8-sig'` der sauberste Weg, es automatisch zu handhaben. Für MySQL musst du den BOM vor dem Import entfernen oder eine `LOAD DATA`-Anweisung verwenden, die `CHARACTER SET utf8mb4` angibt. Für PostgreSQL entferne ihn einfach; der `COPY`-Befehl ist nicht nachsichtig. Wenn du CocoConvert verwendest, merke dir die Regel: Aktiviere den UTF-8 BOM-Umschalter nur, wenn du weißt, dass die Datei direkt an einen Excel-Benutzer geht, der sie per Doppelklick öffnen wird. Für jedes andere Ziel – eine Datenbank, eine API, ein Skript – lasse ihn ausgeschaltet. Wenn du vermutest, dass deine Quelldatei Probleme hat, nimm dir die zusätzlichen zehn Sekunden, um ihre Kodierung explizit anzugeben. Das ist viel schneller, als eine schlechte Konvertierung zu beheben. Der BOM ist eine winzige Sache – nur drei Bytes. Aber er sitzt genau an der Bruchlinie zwischen verschiedenen Annahmen darüber, wie Textdateien funktionieren sollten, und verursacht unverhältnismäßig viel Frustration. Zu wissen, wann man ihn verwendet, wann man ihn vermeidet und wie man ihn umgeht, ist der Schlüssel, um deine CSV-Daten sauber zwischen Tools fließen zu lassen.