Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Как уменьшить размер файла Excel до прежних размеров после некоторых манипуляций?? (http://forum.oszone.net/showthread.php?t=89662)

Jiun 04-09-2007 12:10 637986

Как уменьшить размер файла Excel до прежних размеров после некоторых манипуляций??
 
Книга Excel из одного листа занимает 82 к. (34 строки 70 столбцов). Ячейки заполнены формулами, цифрами и текстм. в ячейке не больше 40 символов. числа не больше 999 999. строки с 35 по последнюю (65536) скрыты.

Если делаешь какую-либо манипуляцию со всеми ячейками листа (напр. очищаешь некоторые по какому-то условию ), размер файла увеличивается в 200 раз. (1 600 к. )
Удаление пустых столбцов и строк ничего не дает.
Как уменьшить размер файла до прежних размеров? Выделять заполненные ячейки и копировать на др. лист на подходит: файл уменьшается. но это кропотливая работа, портятся формулы и т.д. Что увеличивает файл и как это устранить?

Макрос очистки всех ячеек:
Dim iTarget As Range
Dim Vars As Variant
With Application.Worksheets
Set iTarget = ThisWorkbook.ActiveSheet.UsedRange
For Each Vars In iTarget
If Vars.HasFormula = False And Vars.Interior.ColorIndex = xlNone Then
Vars.ClearContents
End If
Next Vars
End With

CyberDaemon 04-09-2007 12:16 637988

Попробуй "Сохранить как".

Jiun 04-09-2007 12:39 638011

CyberDaemon,
"Сохранить как" не срабатывает. Сохраняет большой объем. в файле где-то большой объем лишней инфы, а где?

XCodeR 04-09-2007 19:05 638174

Jiun, copy - past :)


kim-aa 05-09-2007 10:24 638429

Jiun,
1) Попробуйте копировать сами листы в новый файл.
Заодно после каждого копирования смотрите на сколько увеличился объем файла.
Так и вычислите врага.


2) Еще объем файла зависит от версии .XLS которой он придерживается.

В свое время я боролся с этим так - открывал копию файла в OpenOffice, сохранял там как копию, и затем снова открывал полученный продукт в MS Office.


PS.
Но самое надежное это все таки Вариант 1.


Время: 14:52.

Время: 14:52.
© OSzone.net 2001-