Страницы: 1
RSS
"Ломаются" файлы Excel
 
Подскажите, почему могут "ломаться" файлы Excel.

Есть файл *.xlsb, 80 МБ. Периодически возникает ошибка "прекращена работа Microsoft Excel". Ошибка может возникнуть в момент внесения изменения в отчет, или в момент сохранения. Из-за этого приходится при разработке отчета постоянно сохранять копии. Файл "испорченный" больше не открывается на этом компьютере, сразу появляется сообщение об ошибке "прекращена работа Microsoft Excel". Если повезет, он может открыться на другом компьютере и после пересохранения работает какое-то время нормально, однако через некоторое время (максимум несколько дней) история повторяется.
Самое странное - "портятся" так же предыдущие копии этого отчета, даже если в этот день предыдущие версии отчета не открывали.
Перезагрузка компьютера не помогает. Восстановить файл через "открыть и восстановить" не удается - большая часть информации теряется (диаграммы, дашборд).
Excel переустанавливали, была 16 версия, сейчас Excel 2013.

Если открывать файл в режиме защищенного просмотра, ошибка не появляется, но как только выбрано "разрешить редактирование", Excel зависает. При этом перед зависанием перестают работать макросы и гиперссылки в отчете. При попытке открыть редактор макросов Excel снова "зависает" и файл "портится", приходится брать старую копию файла, более раннюю версию отчета и дорабатывать. При этом до того, как файл "портится", макросы работают нормально и сообщений об ошибке при запуске макросов нет, т.е. причина, возможно, и не в макросах.

Подскажите, в чем может быть причина, и как можно попробовать это исправить??  
 
Похоже на предсмертную агонию файла :) И в один прекрасный черный день файл откажется открываться, надоест ему тащить непосильный груз.
В таких стуациях нужно смотреть пациента, а не лечить по Скайпу.

Полностью пересмотреть подход к работе с Excel. Не любит он большие объемы. Тем более .xlsb, который по сути является архивным.  До десятка Мб - еще куда ни шло (и то много)...
Форматы, формулы, подключения, условное форматироваие, сводные таблицы - все это грузит файл. Особенно условное форматирование и летучие функции. Летучие - пересчитываются не только при изменении входных данных, но и при любом изменении н  листе. Их немного, 6 или 7 штук, но хлопот доставляют немало. Из практики: одна-единственная формула с СЕГОДНЯ() подвешивала файл, т.к. на нее было завязано много вычислений.

Упрощайте. По возможности растаскивайте данные по разным книгам. Формульные вычисления менять на обработку макросами. Вместо сводных - те же макросы. По минимуму украшательств в расчетных таблицах.
 
vikttur, спасибо за полезную информацию! :)
В итоге помогло отключение всех надстроек из папки Надстройки COM. Пока ошибка не возвращалась.
 
Цитата
_daria_ написал:
Excel переустанавливали, была 16 версия, сейчас Excel 2013.
У меня объемный .xlsb созданный в 2013 не открывался в 2016.
Причиной оказалась формула массива на одном из листов. Переписал формулу в 2016 версии и начал летать.
Ха.. Но перестал открываться в 2013 версии. Что-то не нравиться при конвертации в формуле xlsb 2016 - xlsm - xlsb 2013 и наоборот.
Будете искать конкретную причину начните с формул массивов если таковые имеются в вашем файле  
Страницы: 1
Наверх