Zum Inhalt springen
OneKitly

XLS, XLSX, XLSM und XLSB: was ist was — und was brauchst du

Veröffentlicht am 19.8.2026 · 11 Min. Lesezeit · Datei-Tools

Daniel Okonkwo

Daniel OkonkwoFront-end-Entwickler und Tech-Redakteur bei OneKitly

Web-Performance · Dateiformate

Anhand von 4 Quellen geprüft

Profil ansehen
Kurz gesagt

Nimm XLSX, wenn du keinen konkreten Grund für etwas anderes hast. Nimm XLSM nur, wenn die Mappe Makros ausführen muss. Nimm XLSB nur, wenn die Datei sehr groß ist und in einer Organisation mit Excel bleibt. Lies XLS, schreib es nie. Diese eine Tatsache macht alles Übrige verständlich: XLSX, XLSM und XLSB sind dasselbe — ein ZIP-Archiv aus Teilen. Benenne eines davon in .zip um, und der Dateimanager öffnet es. Die 201-zeilige Testmappe dieses Artikels ist als .xlsx ein ZIP mit zehn Mitgliedern: xl/workbook.xml, xl/worksheets/sheet1.xml, xl/styles.xml, [Content_Types].xml und sechs weitere. Als .xlsb gespeichert enthält dasselbe Paket stattdessen xl/workbook.bin und xl/worksheets/sheet1.bin — identischer Behälter, binäre statt XML-Teile. Eine XLSM ist Byte für Byte eine XLSX plus die Erlaubnis, xl/vbaProject.bin zu tragen. XLS fällt heraus: sie beginnt mit D0 CF 11 E0 A1 B1 1A E1, einer OLE2-Verbunddatei von vor 2007, und Umbenennen in .zip bringt nichts. Die Größenunterschiede sind echt, aber kleiner als die Legende. Dasselbe 201-Zeilen-Blatt belegt 17 408 Byte als .xls, 44 343 als .xlsx, 44 321 als .xlsm, 28 505 als .xlsb. Der Maßstab dreht das Bild: bei 25 000 Zeilen mal 5 Spalten war die .xlsx 5 031 220 Byte groß und brauchte 562 ms zum Einlesen, die .xlsb 3 780 567 Byte und 234 ms — ein Viertel kleiner, doppelt so schnell gelesen. Eine Warnung vor dem Umwandeln: dieses Werkzeug schreibt .xlsx, und .xlsx kann keine Makros tragen. Eine XLSM umzuwandeln entfernt sie, kommentarlos.

Vier Endungen, drei davon dieselbe Kiste mit unterschiedlichen Deckeln. Benenne eine XLSX in .zip um, und sie lässt sich öffnen — diese eine Tatsache erklärt die ganze Familie, und sie erklärt, warum ausgerechnet XLS, das sich so nicht öffnen lässt, weiter Ärger macht.

Die eine Tatsache, die alles erklärt: benenne es in .zip um

Nimm eine Kopie irgendeiner .xlsx, ändere die Endung in .zip und mach einen Doppelklick. Sie öffnet sich. Darin liegt ein Ordnerbaum: [Content_Types].xml erklärt, was jeder Teil ist, _rels/.rels sagt, wie die Teile aufeinander verweisen, xl/workbook.xml listet die Blätter, xl/worksheets/sheet1.xml enthält die Zellen, xl/styles.xml die Formatierung. Die Testdatei dieses Artikels hatte genau zehn solcher Mitglieder. Das ist der ganze Entwurf: eine Mappe ist ein gepacktes Bündel kleiner XML-Dokumente, normiert als ECMA-376 und später als ISO/IEC 29500.

Wer das einmal gesehen hat, für den hört der Rest der Familie auf, rätselhaft zu sein. XLSM ist dasselbe ZIP mit einem zusätzlich erlaubten Teil darin — xl/vbaProject.bin, dem kompilierten Makroprojekt — und einem Inhaltstyp, der Excel ankündigt, damit zu rechnen. XLSB ist wieder dasselbe ZIP, nur ist jeder XML-Teil durch einen binären Datensatzstrom ersetzt: in der Testdatei wurde aus xl/workbook.xml die xl/workbook.bin, aus xl/worksheets/sheet1.xml die sheet1.bin, aus xl/styles.xml die styles.bin. Gleicher Behälter, gleicher Aufbau, andere Kodierung des Inhalts.

XLS verweigert den Trick, und genau diese Verweigerung ist der Punkt. Ihre ersten acht Byte lauten D0 CF 11 E0 A1 B1 1A E1 — die Signatur einer OLE2-Verbunddatei, eines kleinen Dateisystems in einer Datei, das Microsoft vor 2007 für Office-Dokumente nutzte. Kein ZIP, kein XML, nichts, worin ein modernes Werkzeug ohne eigenen Parser herumlaufen könnte. Alles Sperrige an XLS folgt daraus: es ist ein Gegenstand anderer Art, der den Namen einer Tabelle trägt.

Warum eine Organisation, die noch XLS bekommt, ein echtes Problem hat

Das Problem ist nicht Nostalgie, sondern Angriffsfläche. Eine XLS zu lesen heißt, einen handgeschriebenen Binärparser über nicht vertrauenswürdige Bytes laufen zu lassen: in einen Datenstrom springen, einen Satztyp lesen, eine Länge lesen, dieser Länge glauben. Diese Art Code hat über zwei Jahrzehnte eine lange Reihe von Speicherfehler-Meldungen in Office hervorgebracht, und deshalb liefert Microsoft Dateisperr-Einstellungen aus, mit denen eine Administration alte Binärformate rundweg ablehnen kann, und deshalb werden Makros aus dem Internet stammender Dateien standardmäßig blockiert und nicht bloß angemahnt.

Das zweite Problem ist leiser und teurer: XLS ist bei 65 536 Zeilen und 256 Spalten am Ende. Ein moderner Export, der eines von beidem überschreitet, wird abgeschnitten statt abgelehnt, und ein abgeschnittener Bericht sieht genauso aus wie ein vollständiger. Wenn irgendein Ablauf in deiner Organisation noch .xls erzeugt, ist das zuerst zu prüfen — noch vor der Sicherheitsfrage.

Die Lösung ist nicht, die Endung zu verbieten — das schiebt die Datei nur in einen E-Mail-Anhang, den niemand protokolliert. Die Lösung ist, sie beim Eingang umzuwandeln und das Original irgendwo schreibgeschützt aufzubewahren. Genau dafür ist der Konverter dieser Seite da: er liest XLS, XLSX, XLSM, XLSB, ODS und Apple Numbers und schreibt XLSX. Eine Ausgabe, immer, in deinem Browser, ohne dass etwas hochgeladen wird.

XLSM — und das, was dieser Konverter dir nicht sagt

XLSM gibt es aus einem einzigen Grund: XLSX darf keine Makros enthalten, also braucht eine Mappe, die Code ausführt, einen anderen Inhaltstyp und eine andere Endung. Diese Trennung ist Absicht und ein guter Entwurf — schon am Dateinamen erkennst du, ob eine Tabelle etwas ausführen kann, bevor du sie öffnest.

Was uns zu dem bringt, was das Ausführen des Konverters tatsächlich gezeigt hat. Für den Test wurde eine Mappe gebaut, die wirklich xl/vbaProject.bin trägt, in [Content_Types].xml genau so deklariert, wie Excel es deklariert. Das Werkzeug las sie anstandslos. Das Makroprojekt überlebte in keine Richtung: der Leser fragt es nie ab, es wird also verworfen, noch bevor die Umwandlung beginnt, und die herauskommende .xlsx enthält überhaupt keinen VBA-Teil — die zehn Mitglieder der Ausgabe wurden einzeln geprüft. Also: eine XLSM hier umzuwandeln liefert eine funktionierende Tabelle mit entferntem Code, und keine Meldung sagt es.

Oft ist genau das erwünscht. Einer per Mail eingegangenen Mappe die Makros zu nehmen ist eine vernünftige Hygienemaßnahme, und der sicherste Weg dorthin ist, nach XLSX umzuwandeln und das Ergebnis zu behalten. Es ist eine Katastrophe, wenn die Makros der Sinn der Sache waren — ein Monatsmodell, das jemand in der Buchhaltung 2011 gebaut hat und das seither niemand gelesen hat. Wisse vor dem Klick, welcher Fall vorliegt, und behalte das Original in beiden Fällen.

Wann XLSB seine Unverträglichkeit wert ist

Auf einem kleinen Blatt bringt XLSB fast nichts. Die 201-zeilige Testdatei war 44 343 Byte als .xlsx und 28 505 als .xlsb, und keine von beiden brauchte eine messbare Zeit zum Öffnen. Bei 25 000 Zeilen mal 5 Spalten wird der Abstand zum Argument: 5 031 220 Byte gegen 3 780 567, und 562 Millisekunden Einlesen gegen 234. Das ist der ganze Fall für XLSB, und er ist echt — ein Viertel weniger auf der Platte und weniger als die halbe Lesezeit, weil der Parser Zahlen bekommt statt eines Textdokuments, das er zerlegen muss.

Der Preis ist Portabilität, und er ist hoch. XLSB ist ein binäres Teileformat von Microsoft: die Spezifikation ist veröffentlicht, aber jedes Werkzeug, das es liest, musste sie eigens umsetzen, und die Unterstützung außerhalb von Excel ist lückenhafter und später gekommen als bei XLSX. Web-Vorschauen, Mailprogramme, Statistikpakete und die halbe Skriptbibliothekswelt öffnen eine XLSX und stolpern über eine XLSB. Es gab eine weitere gemessene Überraschung: die 25 000-Zeilen-XLSB mit derselben Bibliothek zu schreiben dauerte 21 Sekunden gegen eine halbe Sekunde für die XLSX. Das ist eher eine Eigenschaft jenes Schreibers als des Formats, erinnert aber daran, dass die schnelle Seite von XLSB die Leseseite ist.

Die Regel ist also eng. Nimm XLSB, wenn die Datei in Millionen Zellen gemessen wird, in einer Organisation bleibt, nur in Excel geöffnet wird und die bei jedem Öffnen gesparten Sekunden für jemanden etwas wert sind. Alles andere ist XLSX — auch alles, was du an jemanden schickst, dessen Software du nicht kontrollierst.

Was der Konverter behalten hat — und was nicht

Das Testblatt hatte 200 Formeln in der letzten Spalte und eine Datumsspalte, und jedes der fünf Formate lief durch den Lese- und Schreibweg des Werkzeugs selbst. Zeilen: 201 von 201, jedes Mal. Datumsangaben: in allen fünf als Datum erhalten, nicht als Seriennummer. Formeln: 200 von 200 aus XLSX, XLSM und ODS erhalten. Null aus XLSB und null aus XLS — die Werte kamen an, die Rechnungen nicht.

Diese letzte Zeile braucht eine ehrliche Fußnote. Die XLS- und XLSB-Testdateien wurden von derselben Bibliothek geschrieben, die sie wieder eingelesen hat, und deren Schreiber für diese beiden Formate legen den zwischengespeicherten Wert ohne die Formel ab. Die Messung beweist also, dass der Hin- und Rückweg verlustbehaftet ist; sie beweist nicht, dass eine wirklich von Excel geschriebene XLS ihre Formeln beim Einlesen verlöre. Der praktische Rat ist in beiden Fällen derselbe und kostet eine Minute: öffne die umgewandelte Datei, klick auf eine Zelle, die eine Rechnung sein sollte, und sieh in die Bearbeitungsleiste, bevor du das Original löschst.

Noch etwas Wissenswertes über den Leser: er fordert die leeren Zellen mit an. Eine Zelle, deren Formel vorhanden, deren zwischengespeichertes Ergebnis aber leer ist — häufig in Mappen, die ein Generator geschrieben oder die jemand ohne Neuberechnung gespeichert hat —, würde sonst ganz weggeworfen, samt Formel. Weil diese Zellen erhalten bleiben, kann eine umgewandelte Datei dir eine Formel zeigen, die nie eine Zahl geliefert hat.

Die vier Formate an identischen Kriterien, gemessen an derselben 201-zeiligen Testmappe
FormatWas die Datei wirklich istÖffnet sich, umbenannt in .zipKann Makros enthaltenGröße, 201-Zeilen-BlattWähle es, wenn
XLSOLE2-Verbunddatei, Binärformat vor 2007NeinJa, als Binärstrom17 408 ByteNie schreiben. Lesen, umwandeln, Original archivieren
XLSXZIP aus XML-Teilen (ECMA-376)Ja — 10 Mitglieder in der TestdateiNein, absichtlich44 343 ByteImmer, außer eine Zeile unten trifft zu
XLSMDasselbe ZIP, plus erlaubte xl/vbaProject.binJa — dieselben 10 MitgliederJa — das ist der einzige Unterschied44 321 ByteDie Mappe muss Code ausführen und du vertraust ihr
XLSBDasselbe ZIP mit .bin- statt .xml-TeilenJa — workbook.bin, sheet1.bin, styles.binJa28 505 ByteMillionen Zellen, nur Excel, eine Organisation
ODSZIP aus ODF-Teilen, das LibreOffice-FormatJa — content.xml, styles.xml, mimetypeJa, in seinem eigenen Skriptmodell94 890 ByteDeine Organisation setzt auf offene Formate
XLS in XLSXWandle eine alte .xls-Mappe im Browser in das moderne .xlsx-Format um.Tool ausprobieren

Häufige Fragen

Kann ich eine XLS einfach in XLSX umbenennen?
Nein, und das ist der häufigste Weg, eine Datei zu verlieren. Die Endung ist ein Etikett; die Bytes darunter sind eine OLE2-Verbunddatei, kein ZIP. Excel merkt es meist und verweigert, oder öffnet mit dem Hinweis, dass Endung und Inhalt nicht zusammenpassen. Alles Nachsichtigere gibt schlicht einen Fehler aus. Umbenennen klappt nur zwischen XLSX, XLSM und XLSB, die wirklich derselbe Behälter sind — und selbst da belügst du den Inhaltstyp, was eigene Probleme schafft. Wandle lieber um.
Zerstört das Umwandeln meiner XLSM in XLSX sie?
Es zerstört die Makros und sonst nichts. Zellen, Formeln, Formatierung und Blattnamen kommen durch; das kompilierte VBA-Projekt nicht, weil XLSX keinen Platz dafür hat. Geprüft an einer Mappe, die eigens gebaut wurde, um xl/vbaProject.bin zu tragen — die Ausgabe enthielt keinerlei VBA-Teil, und es erschien keine Warnung. Sind die Makros tragend, behalte die XLSM und wandle nur eine Kopie um. Sind sie unerwünscht, ist das der sauberste Weg, sie loszuwerden.
Ist XLSB wirklich schneller oder ist das ein Mythos?
Echt, aber nur im großen Maßstab und nur beim Lesen. Bei einem 201-Zeilen-Blatt sind es 28 505 Byte gegen 44 343, und keine von beiden braucht eine messbare Zeit zum Öffnen. Bei 25 000 Zeilen mal 5 Spalten sind es 3 780 567 Byte gegen 5 031 220 und 234 Millisekunden gegen 562 — ein Viertel kleiner, in weniger als der halben Zeit gelesen. Dieselbe Datei zu schreiben war mit der hier verwendeten Bibliothek umgekehrt: 21 Sekunden für die XLSB gegen eine halbe Sekunde für die XLSX. Beurteile XLSB danach, wie oft die Datei geöffnet wird, nicht danach, wie groß sie im Ordner aussieht.
Wie erkenne ich, was eine Datei wirklich ist, wenn die Endung falsch ist?
Sieh dir die ersten Bytes an. 50 4B — die Zeichen PK — heißt ZIP, also XLSX, XLSM, XLSB, ODS oder ein gewöhnliches Archiv. D0 CF 11 E0 A1 B1 1A E1 heißt OLE2-Verbunddatei: XLS, DOC, PPT oder ein altes MSI. Klartext mit Kommas oder Semikola und ganz ohne Signatur ist eine CSV, die jemand umbenannt hat. Auf macOS und Linux sagt der Befehl `file` das alles in einer Zeile; unter Windows zeigt jeder Hex-Betrachter die erste Reihe. So entscheidet auch der Konverter dieser Seite, was er bekommen hat, statt dem Namen zu glauben.
Lädt der Konverter meine Mappe irgendwohin hoch?
Nein. Die ganze Umwandlung läuft in deinem Browser: die Tabellenbibliothek wird einmal geladen, die Datei von der Platte in den Speicher gelesen und die neue Mappe als Download wieder herausgeschrieben. Nichts verlässt den Rechner — genau das, was man für den Fall braucht, um den es dieser Seite wirklich geht: eine alte Mappe voller Namen, Gehälter oder Kundendaten, die man nicht auf den Server eines Fremden legen möchte, bloß um die Endung zu ändern.

Artikel, die dich interessieren könnten

Alle Ratgeber
ErklärungFormeln in Werte umzuwandeln behält die zwischengespeicherte Antwort, nicht die RechnungEine Tabellendatei speichert sowohl die Formel als auch die zuletzt von Excel berechnete Antwort. Die Formel zu entfernen lässt die gespeicherte Antwort stehen — und eine Lücke überall dort, wo die Datei nie eine trug.ErklärungDie Zahl 1 und der Text „1“ sind keine DublettenDas Entdoppeln vergleicht ganze Zeilen exakt, samt Zelltyp. Fünf gleich aussehende Zeilen kamen als drei heraus: Eine trug eine Zahl, eine einen String und eine einen String mit führendem Leerzeichen.ErklärungWarum dein CSV in Excel Umlaute und Datumsangaben zerlegtHinter demselben Satz verbergen sich drei völlig verschiedene Fehler. Einer ist die Kodierung, einer das Trennzeichen, einer Excel, das beim Öffnen Datentypen errät — und jeder hat eine andere Lösung. So unterscheidest du sie in fünf Sekunden.VergleichZIP oder TAR: welches — und warum es einen Unterschied machtEin einziger struktureller Unterschied erklärt alles Weitere: TAR komprimiert nicht, es stapelt nur; ZIP komprimiert jede Datei für sich. An 60 kleinen Quelldateien gemessen sind das 1 809 Byte gegen 14 686.AnleitungEin PDF nummerieren, wenn die Seiten gedreht oder unterschiedlich groß sindEin aufgeräumtes Dokument zu nummerieren ist trivial. Zu schaffen machen eine quer gedrehte Seite, ein Letter-Blatt zwischen A4-Seiten, eine Druckdatei mit Anschnitt und ein Dokument, das seine Nummer schon selbst druckt. Alle vier wurden getestet: Bei den ersten drei landet die Zahl genau dort, wo du sie angefordert hast, der vierte Fall wird überhaupt nicht erkannt.RatgeberWas ein PDF über dich verrät: Metadaten lesen und löschenEin PDF führt seine Metadaten zweimal mit, in zwei Speichern, die verschiedene Geschichten erzählen können, und keiner davon ist die ganze Geschichte. Hier steht, was wirklich in der Datei ist, was das Löschen entfernt und welche zwei Dinge jede Säuberung überleben.

Ähnliche Tools

Das hier beschreibt, was diese Konverter heute tun — geprüft, indem ihr eigener Code auf echten Dateien ausgeführt wurde — und nicht, was sie tun sollten. Wie sich ein Format verhält, hängt von der Excel-, LibreOffice- oder Numbers-Version ab, die die Datei geschrieben hat, und von der, die sie öffnen wird: Behalte das Original also, bis du die umgewandelte Kopie geöffnet und angesehen hast. Alles, worauf es ankommt — eine Mappe mit Makros, ein Modell voller Formeln, eine Datei, auf die sich jemand anderes verlässt — wird nach der Umwandlung Zelle für Zelle geprüft und nicht deshalb geglaubt, weil ein Fortschrittsbalken durchgelaufen ist.

Quellen

Hast du einen Fehler in diesem Artikel entdeckt?