Cookies für Statistik und Werbung
Wir setzen Cookies für Statistik und Werbung ein, beides geht an Google. Wenn du ablehnst, ändert sich für dich sichtbar nichts.Zur Datenschutzseite
XLSX
Das Excel-Format seit 2007. Mehrere Blätter, Formeln, Formatierung.
XLSX
XLSX ist ein Behälter: eine Hülle für Ströme, die etwas anderes kodiert hat. Eingesetzt wird es für die Bearbeitung.
Die Endung lautet .xlsx, der volle Name Excel Workbook. Beides sagt weniger aus als das, was die Datei halten kann — und davon handelt der Rest dieser Seite.
Microsoft hat es 2007 veröffentlicht. Die Spezifikation ist ECMA-376.
Das Alter ist aus einem praktischen Grund interessant: je älter ein Format, desto mehr Programme hatten Zeit, es zu lernen.
Sie ist vollständig veröffentlicht, das Format lässt sich also aus dem Dokument umsetzen statt durch Nachsehen. Deshalb taucht es in so vielen Programmen auf, und deshalb gehen Dateien von vor zwanzig Jahren heute noch auf. Veröffentlicht heißt allerdings nicht lizenzfrei: Wo ein Format einen Codec einpackt, ist die Patentfrage eine eigene, die der Standard nicht mitbeantwortet.
Eine XLSX-Datei ist nicht auf eine Seite beschränkt. Beim Umwandeln in etwas, das es ist, zählt das: Eine Umwandlung ergibt eine Datei mit genau einer Seite — der ersten, sofern sich die Seite nicht auswählen lässt.
XLSX kann keinen ausführbaren Code mitführen. Deshalb lassen Mailserver und Dokumentenportale es durch, wo sie den makrofähigen Zwilling anhalten.
XLSX enthält eine Tabelle: Zellen, Formeln und die Blätter darum herum.
Daraus folgt, wie es sich umwandeln lässt: Aus einer Tabelle wird ein Druckbereich, und wo die Spalten umbrechen, muss jemand entscheiden.
XLSX bringt optionale Verschlüsselung mit.
Eine verschlüsselte Datei muss aufgeschlossen werden, bevor sie irgendetwas umwandeln kann — hier wie überall. Ein Passwort ist nichts, was ein Umwandler umgehen kann, und einem, der es behauptet, sollte man die Datei erst recht nicht geben.
Microsoft Excel, LibreOffice Calc und Google Sheets lesen es, und die meisten Programme derselben Art ebenfalls.
Wenn eine Datei nicht aufgeht, liegt es selten am Format — häufiger daran, dass das Programm älter ist als das Format. Die Umwandlung in etwas Älteres ist der verlässliche Weg daran vorbei, und dafür gibt es den Rest dieser Website.
Kein Browser liest es.
Das ist der häufigste Grund, es umzuwandeln: nicht dass das Format schlecht wäre, sondern dass die Stelle, an der die Datei erscheinen soll, es nicht lesen kann.
XLSX ist zum Öffnen und Ändern gedacht. Behalte die Datei in diesem Format, solange die Arbeit läuft, und exportiere daraus, wann immer eine fertige Fassung gebraucht wird.
Eine .xlsx in .zip umbenennen und öffnen. Darin liegt ein kleiner Verzeichnisbaum: eine XML-Datei je Tabellenblatt, eine gemeinsame Tabelle aller unterschiedlichen Zeichenketten in der Arbeitsmappe, eine Formatierungsdatei und ein Ordner mit den Dokumenteigenschaften. Ein Bild oder ein eingebettetes Objekt liegt dort als eigene Datei.
Das ist keine Spielerei. Es erklärt, warum sich eine beschädigte Arbeitsmappe manchmal retten lässt, indem man das Archiv öffnet und das XML des Tabellenblatts herauszieht, warum sich Dateigrößen so verhalten, wie sie es tun, und warum eine Arbeitsmappe Dinge tragen kann, an die sich niemand mehr erinnert. Das Format lässt sich mit Werkzeugen untersuchen, die ohnehin jeder hat.
XLSX löste mit Office 2007 das binäre XLS-Format ab. Das alte Format war ein binäres Compound-Dokument, das nur Microsoft vollständig verstand; das neue ist dokumentiert, und deshalb können LibreOffice, Google Sheets, Numbers und Dutzende Bibliotheken es zuverlässig lesen, während die XLS-Unterstützung immer nur bestmögliches Rätselraten war.
Die Grenzen verschoben sich gleichzeitig, und das lohnt zu wissen, weil man sie immer noch trifft: Ein Tabellenblatt fasst 1.048.576 Zeilen und 16.384 Spalten, gegenüber 65.536 und 256 vorher. Ein Export, der exakt bei 65.536 Zeilen abgeschnitten ist, ist ein Werkzeug, das das alte Format schreibt, kein Zufall.
Jede Formelzelle enthält zwei Dinge: die Formel als Text und das zuletzt berechnete Ergebnis. Deshalb zeigt eine Arbeitsmappe beim Öffnen sofort Werte, statt erst hunderttausend Zellen neu zu berechnen, und deshalb kann ein Werkzeug ohne eigene Formel-Engine trotzdem die richtigen Zahlen melden.
Es bedeutet aber auch, dass der zwischengespeicherte Wert veraltet sein kann. Eine Datei, die von einem Programm geschrieben wurde, das nicht rechnet — viele Exportbibliotheken tun das nicht —, enthält Formeln ohne Ergebnisse, und jede Zelle liest sich als null oder leer, bis Excel sie öffnet. Sieht eine erzeugte Arbeitsmappe dort leer aus, wo Summen stehen sollten, ist das meist der Grund.
Zahlen werden als Fließkommazahlen doppelter Genauigkeit gespeichert, was etwa fünfzehn signifikante Stellen fasst. Eine IBAN mit zweiundzwanzig Zeichen, eine lange Bestellnummer oder eine Sozialversicherungsnummer verliert ihre letzten Ziffern — dauerhaft, in der Datei, nicht nur in der Anzeige.
Die Abhilfe ist, die Spalte auf Text zu stellen, bevor die Daten ankommen, damit die Ziffern als Zeichen gespeichert werden statt als Größe. Es ist dasselbe zugrundeliegende Problem wie die verschwindende führende Null bei Postleitzahlen, und dieselbe Regel gilt: Eine Kennung ist keine Zahl, nur weil sie aus Ziffern besteht.
Die Dokumenteigenschaften tragen die Autorin, die zuletzt speichernde Person, den Firmennamen aus der Office-Installation sowie Erstell- und Änderungsdatum. Ausgeblendete Zeilen, Spalten und Tabellenblätter sind verborgen, nicht entfernt — die Daten stehen im XML, und jeder kann sie lesen.
Externe Verknüpfungen sind die schärfste Kante. Eine Formel, die auf eine andere Arbeitsmappe verweist, speichert den vollständigen Pfad, von dem aus verlinkt wurde, und dieser Pfad nennt häufig eine Netzwerkfreigabe, eine Mandantin oder eine Ordnerstruktur, die etwas über das Unternehmen verrät. Die Dokumenteigenschaften zu leeren entfernt das nicht — es steckt im Tabellenblatt, nicht in den Metadaten.
Das ist absichtlich und eine der besseren Entscheidungen des Formats. Eine Datei mit der Endung .xlsx kann keinen Makrocode enthalten; eine Arbeitsmappe mit Makros muss als .xlsm gespeichert sein, was sich an der Endung zeigt. Eine XLSM in XLSX umzubenennen schmuggelt den Code nicht durch — die Arbeitsmappe verliert ihn einfach.
Daraus ergibt sich eine brauchbare Regel für alles, was per Mail ankommt: Eine reine .xlsx kann beim Öffnen keinen Code ausführen. Das Risiko liegt bei .xlsm und dem älteren .xls, die beides können und keines davon so klar zeigen.
Alles im Archiv ist komprimiert, und Tabellen-XML ist außerordentlich repetitiv, weshalb das Verhältnis ungewöhnlich gut ausfällt. Eine Arbeitsmappe mit hunderttausend Zeilen kann bei wenigen Megabyte landen. Wiederholter Text wird einmal in der gemeinsamen Tabelle gespeichert und per Nummer referenziert, weshalb eine Spalte mit denselben zwanzig Kategorienamen fast nichts kostet.
Was eine Arbeitsmappe groß macht, sind meist nicht die Daten: eingebettete Bilder, Formatierung, die auf ganze Blätter statt auf den genutzten Bereich angewendet wurde, und Pivot-Caches, die eine zweite Kopie der Quelldaten speichern, damit sich die Pivot-Tabelle umsortieren lässt, ohne sie neu zu lesen. Eine rätselhaft fünfzig Megabyte große Datei hat meist eines dieser drei Probleme.
Für Menschen ist XLSX ausgezeichnet: Typen sind deklariert, Daten bleiben Daten, lange Zahlen behalten ihre Formatierung, und die Datei trägt ihre eigene Struktur, sodass beim Öffnen nichts geraten werden muss. Eine Tabelle an eine Kollegin zu schicken, ist das jedem Mal die richtige Wahl gegenüber CSV.
Für ein Programm ist es schwerer, als die Aufgabe meist verlangt. Es zu lesen heißt, ein Archiv zu entpacken und mehrere XML-Dokumente mit einer Bibliothek zu parsen, während CSV keine Bibliothek braucht und sich aus einer Datei streamen lässt, die größer ist als der Arbeitsspeicher. Das ist die ehrliche Aufteilung: XLSX, wenn ein Mensch öffnet, CSV, wenn eine Maschine liest.
Die häufigste Ursache ist kein Schaden, sondern ein Download, der zu früh endete oder von einem Mail-Gateway umgeschrieben wurde. Lässt sich das Archiv selbst nicht entpacken, ist die Datei abgeschnitten, und keine Reparatur hilft — sie erneut von der Quelle holen.
Öffnet sich das Archiv, aber Excel weist die Arbeitsmappe zurück, ist das XML des Tabellenblatts meist intakt, und der Schaden steckt in einem der kleineren Teile darum herum. Excels eigenes Öffnen und Reparieren rettet die meisten davon, und wo es das nicht tut, holt zumindest das manuelle Herausziehen des Blatt-XML aus dem Archiv die Daten heraus.
Deutsches Excel exportiert CSV standardmäßig mit Semikolon als Trennzeichen und Komma als Dezimalzeichen, weil das Betriebssystem der deutschen Zahlenschreibweise folgt, in der das Komma bereits die Nachkommastelle markiert. Ein amerikanisches System oder ein Skript, das ein Komma als Trennzeichen erwartet, liest eine solche Datei falsch, mit Spalten, die an der falschen Stelle zerbrechen.
Das ist der Grund, warum ein und dieselbe Exportfunktion in zwei Ländern zwei verschiedene CSV-Dateien erzeugt und warum XLSX in diesem einen Punkt zuverlässiger ist als CSV: Die Zahl bleibt in der Zelle eine Zahl, unabhängig davon, welches Trennzeichen die exportierende Person auf dem eigenen Rechner gewohnt ist.
| Endung | .xlsx |
|---|---|
| Medientyp | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
| Herausgegeben von | Microsoft |
| Erstmals veröffentlicht | 2007 |
| Spezifikation | ECMA-376 |