Seit Excel 2007 hat Microsoft das klassische Split - .xls
Format in verschiedenen Formaten (insbesondere .xlsx
, .xlsm
, .xlsb
). Ich habe kein Problem damit, die Verwendung und den Zweck des .xlsx
Formats zu verstehen, aber ich frage mich immer noch, ob wir beim Erstellen einer Datei mit VBA ein .xlsm
oder ein .xlsb
Format verwenden sollen.
Natürlich finden Sie im Internet einige Themen, zum Beispiel:
- auf Microsoft Antworten Forum
- auf Microsoft - Blog , die in diesen Link (bis 10 noch habe ich analysiert hingewiesen wurde th Seite ohne Suche nach einem ref
.xlsb
) - dieses Thema aus einem anderen Forum
Was ich aus diesem letzten Link verstanden habe, ist, dass .xlsm
es sich um eine Art XML-Format handelt, das für die benutzerdefinierte Multifunktionsleistenregisterkarte benötigt wird.
Gibt es neben dem konzeptionellen Unterschied zwischen dem Format ( .xlsm
basierend auf XML VS .xlsb
ist eine Binärdatei ) einen praktischen Unterschied bei der Verwendung einer dieser Dateien (abgesehen von der Multifunktionsleistenanpassung)?
Haben Sie jemals einen wirklichen Unterschied bei der Verwendung eines dieser Formate gesehen?
quelle
Antworten:
Sie sind sich alle insofern ähnlich, als sie im Wesentlichen Zip-Dateien sind, die die eigentlichen Dateikomponenten enthalten. Sie können den Inhalt anzeigen, indem Sie die Erweiterung durch .zip ersetzen und öffnen. Der Unterschied zu xlsb scheint darin zu bestehen, dass die Komponenten nicht XML-basiert sind, sondern in einem Binärformat vorliegen. Dies ist angeblich bei der Arbeit mit großen Dateien von Vorteil.
https://blogs.msdn.microsoft.com/dmahugh/2006/08/22/new-binary-file-format-for-spreadsheets/
quelle
.xlsx
Lädt 4-mal länger als.xlsb
und speichert 2-mal länger und hat 1,5-mal eine größere Datei. Ich habe dies an einem generierten Arbeitsblatt mit 10'000 Zeilen * 1'000 Spalten = 10'000'000 (10 ^ 7) Zellen einfacher verketteter=…+1
Formeln getestet :(Hardware: Core2Duo 2,3 GHz, 4 GB RAM, 5.400 U / min SATA II HD; Windows 7 unter etwas starker Belastung durch andere Prozesse.)
Daneben sollte es keine Unterschiede geben. Etwas präziser,
zitiert diesen Blog- Beitrag vom 29.08.2006. Vielleicht sind die Informationen,
.xlsb
die den Ribbon-Code nicht unterstützen, neuer als das obere Zitat, aber ich denke, dass Ihre Forum-Quelle einfach falsch ist. Beim Öffnen der Binärdatei scheint sie die OOXML-Dateistruktur 1-zu-1: Blog- Artikel vom 07.08.2006 komprimiert nachzuahmenquelle
.xlsx
ist wie.xlsm
, nur mit deaktivierten Makros. Beide sind XML-basiert. Im Gegensatz dazu.xlsb
ist binär. Sie sollten die Frage also als "{.xlsx / .xlsm} versus .xlsb" lesen. (Es gibt keine makro-deaktivierte Version der Binärdatei.xlsb
.)Man könnte denken, dass xlsb nur Vorteile gegenüber xlsm hat. Die Tatsache, dass xlsm XML-basiert und xlsb binär ist, bedeutet, dass Sie bei einer Beschädigung der Arbeitsmappe bessere Chancen haben, ein xlsm zu reparieren als ein xlsb.
quelle
Nur für die Nachwelt hier der Text aus mehreren externen Quellen zu den Excel-Dateiformaten. Einige davon wurden in anderen Antworten auf diese Frage erwähnt, ohne jedoch den wesentlichen Inhalt wiederzugeben.
1. Von Doug Mahugh, 22. August 2006 :
Dieser Artikel bezieht sich auch auf die Dokumentation zum BIN-Format , die zu lang ist, um hier reproduziert zu werden.
2. Aus dem MSDN-Archiv vom 29. August 2006 , in dem wiederum ein bereits fehlender Blog-Beitrag zum XLSB-Format zitiert wird:
quelle
Das XLSB-Format ist auch für Makros vorgesehen, die in eine versteckte Arbeitsmappendatei eingebettet sind, die sich im Excel-Startordner (XLSTART) befindet.
Ein schneller und schmutziger Test mit einem xlsm oder xlsb im XLSTART-Ordner:
0,89s mit einem xlsb (binär) versus 1,3s mit dem gleichen Inhalt im xlsm-Format (xml in einer Zip-Datei) ... :)
quelle