Страницы: 1
RSS
Excel грузит процессор на 100% при любых действиях с небольшим файлом
 
Имеется файл .xlsx размером 1.2Мбайта, с двумя листами. На сервере с Core i7@4.2ГГц и десятками гигабайт свободной оперативной памяти Excel 2016 Excel грузит ядро процессора на 100%, а работать с файлом практически невозможно - подвисает даже отрисовка, смена положения курсора.
Провали на другом ПК и с libreoffice - без изменений.
Проблема точно в самом файле. При сохранении в .xls размер становится 20.6Мбайт. При пересохранении в .ods размер становистя 1.8Мбайт, но Excel зависает или очень медленно его открывает.
Если распаковать .xlsx видно что место занимают некие drawing*.xml.

Сам файл заполнял не я, но похоже это делали методом копировать/вставить со всем оформлением источника. И это оформление сейчас и мешает.
Картинка image1.png из файла:

очень похожа на html ячейку, которую похоже Excel пытается имитировать:

Пример содержимого drawing2.xml


Вопрос: как очистить файл от ненужного оформления и вернуть возможность нормальной работы?
 
попробуйте открыть этот файл потом открыть свой файл и из своего запустить макросы как они отработают сохраните свой файл и посмотрите размер и отпишитесь о результате
Лень двигатель прогресса, доказано!!!
 
Сергей, Приветствую) есть чуть более новая версия от ZVI
 
Сергей,
скрипт работает долго и старательно :), но в моем случае оказался бесполезным. Запускал в обоих режимах - в полном и аккуратном.
Не мудрствуя лукаво, удалил файлы drawing*.xml внутри распакованного .xlsx и запаковал что осталось обратно.
При запуске Excel ругнулся, что файл поврежден и принялся его восстанавливать:
Код
<recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<logFileName>error486120_01.xml</logFileName>
<summary>
Обнаружены ошибки в файле "C:\Users\... .xlsx"
</summary>
<removedParts>
<removedPart>Удаленный компонент: Рисованная фигура.</removedPart>
<removedPart>Удаленный компонент: Рисованная фигура.</removedPart>
</removedParts>
</recoveryLog>

После чего файл стал работать быстро и как надо. Что это были за рисованные фигуры
Код
<Override PartName="/xl/drawings/drawing1.xml" 
ContentType="application/vnd.openxmlformats-officedocument.drawing+xml"/>

я так и не понял.
Изменено: Kostenelo - 24.07.2019 17:27:43
 
Kostenelo, а ради интереса не пробовали обновленный вариант  
Лень двигатель прогресса, доказано!!!
 
Цитата
Kostenelo написал:
Что это были за рисованные фигуры
И про это Владимир (ZVI) писал.
Владимир
 
Сергей,
тоже самое, похоже скрипт никак не обрабатывает эти "рисованные фигуры" (видимо векторные картинки).
 
Цитата
sokol92 написал:
И про это Владимир (ZVI)  писал .
всегда приятно придумать свой велосипед!
Страницы: 1
Наверх