Так как Excel 2007, Microsoft разделила классический .xls
формат для нескольких форматов (в частности, .xlsx
, .xlsm
, .xlsb
). У меня нет проблем с пониманием использования и назначения .xlsx
формата, но мне все еще интересно, следует ли нам использовать формат .xlsm
или .xlsb
формат при создании файла, содержащего некоторый VBA.
Конечно, вы можете найти несколько тем в Интернете, например:
- на форуме ответов Microsoft
- в блоге Microsoft, на который указывалось в предыдущей ссылке (но я разобрал до 10- й страницы, не найдя ссылки на
.xlsb
) - эта тема с другого форума
Из этой последней ссылки я понял, что .xlsm
это какой-то формат XML и, следовательно, необходим для настраиваемой вкладки ленты.
Помимо концептуальной разницы между форматом ( .xlsm
основан на XML VS .xlsb
- это двоичный файл), есть ли какое-либо практическое различие при использовании любого из этого файла (кроме настройки ленты)?
Вы когда-нибудь видели реальную разницу при использовании любого из этих форматов?
источник
Ответы:
Все они похожи тем, что представляют собой zip-файлы, содержащие фактические файловые компоненты. Вы можете увидеть содержимое, просто заменив расширение на .zip и открыв его. Разница с xlsb, по-видимому, заключается в том, что компоненты не основаны на XML, а находятся в двоичном формате: предположительно это полезно при работе с большими файлами.
https://blogs.msdn.microsoft.com/dmahugh/2006/08/22/new-binary-file-format-for-spreadsheets/
источник
.xlsx
загружается в 4 раза дольше,.xlsb
сохраняет в 2 раза дольше и имеет файл в 1,5 раза больше. Я проверил это на сгенерированном листе с 10'000 строками * 1'000 столбцов = 10'000'000 (10 ^ 7) ячеек простых цепных=…+1
формул:(Аппаратное обеспечение: Core2Duo 2,3 ГГц, 4 ГБ ОЗУ, 5,400 об / мин SATA II HD; Windows 7, при несколько большой нагрузке из-за других процессов.)
Кроме этого, отличий быть не должно. Точнее,
приводит этот блог пост от 2006-08-29. Так что, возможно, информация,
.xlsb
которая не поддерживает код ленты, новее, чем верхняя ссылка, но я полагаю, что ваш источник на форуме просто неверен. При взломе двоичного файла он, кажется, в сжатом виде имитирует файловую структуру OOXML 1-к-1: Статья в блоге от 2007-08-07источник
.xlsx
вроде.xlsm
, только с отключенными макросами. Оба основаны на XML. В отличие от этого,.xlsb
является двоичным. Поэтому вам следует читать вопрос как «{.xlsx / .xlsm} по сравнению с .xlsb». (Нет версии двоичного файла с отключенной макросъемкой.xlsb
.)Можно было подумать, что xlsb имеет только преимущества перед xlsm. Тот факт, что xlsm основан на XML, а xlsb является двоичным, заключается в том, что при повреждении книги у вас больше шансов восстановить xlsm, чем xlsb.
источник
Для потомков, вот текст из нескольких внешних источников относительно форматов файлов Excel. Некоторые из них упоминались в других ответах на этот вопрос, но без воспроизведения основного содержания.
1. От Дуга Махью, 22 августа 2006 г .:
В этой статье также содержится ссылка на документацию о формате BIN , слишком объемную для воспроизведения здесь.
2. Из архива MSDN от 29 августа 2006 г., который, в свою очередь, цитирует уже отсутствующую запись в блоге, касающуюся формата XLSB:
источник
Формат XLSB также предназначен для макросов, встроенных в скрытый файл книги, расположенный в папке автозагрузки Excel (XLSTART).
Быстрый и грязный тест с xlsm или xlsb в папке XLSTART:
0,89 с с xlsb (двоичным) против 1,3 с тем же содержимым в формате xlsm (xml в zip-файле) ... :)
источник