Excel сжимает файлы с помощью Zip-Deflate и сохраняет их. Однако уровень сжатия далеко не лучший. Чтобы уменьшить размер и переслать его, мне нужно каждый раз разархивировать и заново застегнуть его вручную. Есть ли способ изменить настройку уровня сжатия в Excel, чтобы он сжимал и сохранял файл наилучшим возможным способом?
1 ответ
Вы также можете с помощью макроса VBA заменить движок zip.
Макрос, который использует 7Zip для сжатия, можно найти в статье:
Zip Activeworkbook, папка, файл или файлы с 7-Zip (VBA).
Другой метод, размер которого обычно увеличивается примерно на 50%, - это сохранение файла в формате xlsb
, который был представлен в Excel 2007.
Еще один способ - Save As
файл, который иногда уменьшает его размер, предположительно, путем дефрагментации.
Из поста В каком случае мы должны использовать формат xlsm или xlsb? :
Разница с xlsb заключается в том, что компоненты не основаны на XML, а представлены в двоичном формате: предположительно, это полезно при работе с большими файлами. источник
.xlsx загружается в 4 раза дольше, чем .xlsb, сохраняет в 2 раза медленнее и имеет в 1,5 раза больший файл. Я проверил это на сгенерированном рабочем листе с 10 000 строк * 1 000 столбцов = 10 000 000 (10 ^ 7) ячеек простых цепочек =… +1 формул
Существуют также общие методы для уменьшения размера файла Excel. Смотрите, например:
Как уменьшить размер файлов Excel
Как уменьшить огромный файл Excel
Как уменьшить размер файла Excel