Почему excel файл много весит

Как уменьшить размер файла и ускорить его

Если в один прекрасный момент вы осознаете, что ваш основной рабочий файл в Excel разбух до нескольких десятков мегабайт и во время открытия файла можно смело успеть налить себе кофе, то попробуйте пробежаться по описанным ниже пунктам — возможно один или несколько из них укоротят вашего «переростка» до вменяемых размеров и разгонят его «тормоза» 🙂

Проблема 1. Используемый диапазон листа больше, чем нужно

Если ваша таблица занимает 5 на 5 ячеек, то это отнюдь не означает, что Excel запоминает при сохранении этого файла только 25 ячеек с данными. Если вы в прошлом использовали какие-либо ячейки на этом листе, то они автоматически включаются в используемый диапазон (так называемый Used Range), который и запоминается при сохранении книги. Проблема в том, что при очистке используемых ячеек Excel далеко не всегда автоматически исключает их из используемого диапазона, т.е. начинает запоминать в файле больше данных, чем реально имеется.

Проверить это просто – нажмите на клавиатуре сочетание клавиш Ctrl+End и посмотрите куда переместится активная ячейка. Если она прыгнет на фактическую последнюю ячейку с данными на листе – отлично. А если вдруг ускачет сильно правее и/или ниже «в пустоту» – дело плохо: все эти ненужные пустые ячейки Excel тоже запоминает внутри файла.

Лечится это, тем не менее, достаточно легко:

  1. Выделите первую пустую строку под вашей таблицей
  2. Нажмите сочетание клавиш Ctrl+Shift+стрелка вниз – выделятся все пустые строки до конца листа.
  3. Удалите их, нажав на клавиатуре Ctrl+знак минус или выбрав на вкладке Главная – Удалить – Удалить строки с листа (Home – Delete – Delete rows) .
  4. Повторите то же самое со столбцами.
  5. Повторите все вышеописанные процедуры на каждом листе, где при нажатии на Ctrl+End активная ячейка перемещается не на фактическую последнюю ячейку с данными а «в пустоту» ниже и/или правее.
  6. Сохраните файл (обязательно, иначе изменения не вступят в силу!)

Если в вашей книге очень много таких листов, то проще, наверное, использовать короткий макрос.

Проблема 2. Используется старый формат XLS вместо новых XLSX, XLSM и XLSB

Много лет и версий подряд еще с начала девяностых в Excel был один формат файлов — XLS. Это, конечно, убирало проблемы совместимости, но, сам по себе, этот формат давно устарел и имел много неприятных недостатков (большой размер, непрозрачность внутренней структуры данных, легкую повреждаемость и т.д.)

Начиная с верии Excel 2007 Microsoft ввела новые форматы сохранения файлов, использование которых заметно облегчает жизнь и — ваши файлы:

  • XLSX — по сути является зазипованным XML. Размер файлов в таком формате по сравнению с Excel 2003 меньше, в среднем, в 5-7 раз.
  • XLSM — то же самое, но с поддержкой макросов.
  • XLSB — двоичный формат, т.е. по сути — что-то вроде скомпилированного XML. Обычно в 1.5-2 раза меньше, чем XLSX. Единственный минус: нет совместимости с другими приложениями кроме Excel, но зато размер — минимален.

Вывод: всегда и везде, где можно, переходите от старого формата XLS (возможно, доставшегося вам «по наследству» от предыдущих сотрудников) к новым форматам.

Проблема 3. Избыточное форматирование

Сложное многоцветное форматирование, само-собой, негативно отражается на размере вашего файла. А условное форматирование еще и ощутимо замедляет его работу, т.к. заставляет Excel пересчитывать условия и обновлять форматирование при каждом чихе.

Оставьте только самое необходимое, не изощряйтесь. Особенно в тех таблицах, которые кроме вас никто не видит. Для удаления только форматов (без потери содержимого!) выделите ячейки и выберите в выпадающем списке Очистить — Очистить форматы (Clear — Clear Formats) на вкладке Главная (Home) :

Особенно «загружают» файл отформатированные целиком строки и столбцы. Т.к. размер листа в последних версиях Excel сильно увеличен (>1 млн. строк и >16 тыс. столбцов), то для запоминания и обрабоки подобного форматирования нужно много ресурсов. В Excel 2013-2016, кстати, появилась надстройка Inquire, которая содержит инструмент для быстрого избавления от подобных излишеств — кнопку Удалить избыточное форматирование (Clean Excess Cell Formatting) :

Она мгновенно удаляет все излишнее форматирование до конца листа, оставляя его только внутри ваших таблиц и никак не повреждая ваши данные. Причем может это сделать даже для всех листов книги сразу.

Если вы не видите у себя в интерфейсе вкладку Inquire, то ее необходимо подключить на вкладке Разработчик — Надстройки COM (Developer — COM Addins) .

Проблема 4. Ненужные макросы и формы на VBA

Большие макросы на Visual Basic и особенно пользовательские формы с внедренной графикой могут весьма заметно утяжелять вашу книгу. Для удаления:

  1. нажмите Alt+F11, чтобы войти в редактор Visual Basic
  2. найдите окно Project Explorer’а (если его не видно, то выберите в меню View — Project Explorer)
  3. удалите все модули и все формы (правой кнопкой мыши — Remove — дальше в окне с вопросом о экспорте перед удалением — No):

Также код может содержаться в модулях листов — проверьте их тоже. Также можно просто сохранить файл в формате XLSX без поддержки макросов — все макросы и формы умрут автоматически. Также можно воспользоваться инструментом Очистить книгу от макросов из надстройки PLEX.

Проблема 5. Именованные диапазоны

Если в вашем файле используются именованные диапазоны (особенно с формулами, динамические или получаемые при фильтрации), то имеет смысл от них отказаться в пользу экономии размера книги. Посмотреть список имеющихся диапазонов можно нажав Ctrl+F3 или открыв окно Диспетчера имен (Name Manager) на вкладке Формулы (Formulas) :

Также вычищайте именованные диапазоны с ошибками (их можно быстро отобрать с помощью кнопки Фильтр в правом верхнем углу этого окна) — они вам точно не пригодятся.

Проблема 6. Фотографии высокого разрешения и невидимые автофигуры

Если речь идет о фотографиях, добавленных в книгу (особенно когда их много, например в каталоге продукции), то они, само-собой, увеличивают размер файла. Советую сжимать их, уменьшая разрешение до 96-150 точек на дюйм. На экране по качеству это совершенно не чувствуется, а размер файла уменьшает в разы. Для сжатия воспользуйтесь кнопкой Сжать рисунки (Compress pictures) на вкладке Формат (Format) :

Кроме видимых картинок на листе могут содержаться и невидимые изображения (рисунки, фотографии, автофигуры). Чтобы увидеть их, выделите любую картинку и на вкладке Формат (Format) нажмите кнопку Область выделения (Selection Pane) .

Для удаления вообще всех графических объектов на текущем листе можно использовать простой макрос:

Проблема 7. Исходные данные сводных таблиц

По-умолчанию Excel сохраняет данные для расчета сводной таблицы (pivot cache) внутри файла. Можно отказаться от этой возможности, заметно сократив размер файла, но увеличив время на обновление сводной при следующем открытии книги. Щелкните правой кнопкой мыши по сводной таблице и выберите команду Свойства таблицы (Pivot Table Properties) — вкладка Данные (Data) — снять флажок Сохранять исходные данные вместе с файлом (Save source data with file):


Если у вас несколько сводных таблиц на основе одного диапазона данных, то сократить размер файла здорово помогает метод, когда все сводные таблицы после первой строятся на основе уже созданного для первой таблицы кэша. В Excel 2000-2003 это делается выбором переключателя на первом шаге Мастера сводных таблиц при построении:

В Excel 2007-2016 кнопку Мастера сводных таблиц нужно добавлять на панель вручную — на ленте такой команды нет. Для этого щелкните по панели быстрого доступа правой кнопкой мыши и выберите Настройка панели быстрого доступа (Customize Quick Access Toolbar) и затем найдите в полном списке команд кнопку Мастер сводных таблиц (PivotTable and PivotChart Wizard) :

Проблема 8. Журнал изменений (логи) в файле с общим доступом

Если в вашем файле включен общий доступ на вкладке Рецензирование — Доступ к книге (Review — Share Workbook) , то внутри вашего файла Excel на специальном скрытом листе начинает сохраняться вся история изменений документа: кто, когда и как менял ячейки всех листов. По умолчанию, такой журнал сохраняет данные изменений за последние 30 дней, т.е. при активной работе с файлом, может запросто занимать несколько мегабайт.

Мораль: не используйте общий доступ без необходимости или сократите количество дней хранения данных журнала, используя вторую вкладку Подробнее (Advanced) в окне Доступ к книге. Там можно найти параметр Хранить журнал изменений в течение N дней (Keep change history for N days) или совсем отключить его:

Проблема 9. Много мусорных стилей

Про эту пакость я уже подробно писал ранее в статье о том, как победить ошибку «Слишком много форматов ячеек». Суть, если кратко, в том, что если вы разворачиваете на вкладке Главная список Стили ячеек (Home — Cell Styles) и видите там очень много непонятных и ненужных стилей, то это плохо — и для размера вашего файла Excel и для его быстродействия.

Удалить ненужные стили можно с помощью макроса или готовой команды из надстройки PLEX.

Проблема 10. Много примечаний

Примечания к ячейкам, конечно, не самый вредный момент из всех перечисленных. Но некоторые файлы могут содержать большое количество текста или даже картинок в примечаниях к ячейкам. Если примечания не содержат полезной для вас информации, то их можно легко удалить с помощью команды на вкладке ГлавнаяОчистить — Очистить примечания (Home — Clear — Clear Comments) .

Читать еще:  Excel вместо числа ставит дату

Пустой файл Excel много весит

Значит есть в файле один листик и в нем пару колонок на 200 текстовых полей.
При этом файл весит 30Мб!
Если удалить этот единственный лист, то файл станет занимать 1,6 Мб, что тоже очень много для пустого файла.
Макросов и скрытых листов нет. В чем еще может быть дело?
Ctrl-A delete не помогает 🙁

ctrl+N, alt+tab, ctrl+A, ctrl+C, alt+tab, ctrl+V помогают?

эксель 2003 или 2007? сколько строчек, если движок вниз до конца протащить?

может там сохраняется информация, связанная, например, с форматом ячеек — типа число там или текст. даже если ячейка пустая, она содержит инфу о самой себе.

Alt+F11, проверь файл на наличие модулей, форм VBA и т.п.

эксель 2003 или 2007? сколько строчек, если движок вниз до конца протащить? 2003 Эксель
Всего строк 65000. Использовано 0

может там сохраняется информация, связанная, например, с форматом ячеек — типа число там или текст. даже если ячейка пустая, она содержит инфу о самой себе. Установка формата General на весь лист не изменила размер.

попробуй вырезать эти колонки и вставить в новый эксель-файл. мб форматирование какое-то на пустых ячейках осталось. только вырезать те ячейки, в которые есть значение, а не полностью столбцы.

Как-то раз ходил такой файлик по рукам, никто не знал, в чем причина.
я первым делом наугад ткнул в закладку стилей, оттуда вывалился список на несколько тысяч строк.

закладку стилей, где такая закладка? и что вообще понимается в данном контексте под закладкой?
P.S. В результате пришлось действовать по совету с Ctrl,A,C.
Плохо то, что в случае удаления листа слетают очень много ссылок, на него завязанных.

Ага, значит в файле были внешние ссылки? Тогда Эксель может хранить внешние данные, на которые идут ссылки в этом файле, если стоит соответствующая галочка в настройках.

Ага, значит в файле были внешние ссылки? Насколько я понял, ссылки были на файл.

посмотри формат->лист->отобразить
там будет список _всех_ листов книги

посмотри формат->лист->отобразить
там будет список _всех_ листов книги В самом начале же сказал, что скрытых листов нет. Через VBA даже проверил.

Ага, значит в файле были внешние ссылки? Тогда Эксель может хранить внешние данные, на которые идут ссылки в этом файле, если стоит соответствующая галочка в настройках. Ага, значит в файле были внешние ссылки? Тогда Эксель может хранить внешние данные, на которые идут ссылки в этом файле, если стоит соответствующая галочка в настройках.
Тут такая история. Изначально действительно были ссылки и всяческая работа с файлом стала невозможна из-за диких тормозов. Я начал искать проблему, в конечном итоге удалив и все листы кроме одного и все ссылки. И оставшаяся пустая болванка продолжала занимать 30 метров.
Просто рецепт с Ctrl+A не канал с оригиналом (ссылки ломались).

Изначально действительно были ссылки и всяческая работа с файлом стала невозможна из-за диких тормозов. Я начал искать проблему, в конечном итоге удалив и все листы кроме одного и все ссылки. И оставшаяся пустая болванка продолжала занимать 30 метров. There, I fixed it!

Попробуй поглядеть его этой прогой на предмет всяких спрятанных потоков и сториджей

где такая закладка? и что вообще понимается в данном контексте под закладкой? Выпадающий такой список, он есть и в 2003 и в 2007 екселях, там такие слова как «параграф», «заголовок 1», «простой (без форматирования)». Я не знаю, как понятее объяснить

была такая же хрень, только 12 метров.
заархивировал — получилось меньщше полуметра.
так и отправил.

с большим объемом я обычно борюсь отменой общего доступа, если он есть, (сервис > доступ к книге) и стилей (правка > очистить > форматы)
2 и все же, что это за список такой выпадающий?

Если книга Shared, то она занимает в несколько раз больше места.
Tools->Share Workbook

В общем легкого рецепта для себя так и не нашел.
Кто хочет убедиться — смотрите файлик на грине (Пустой.xls)

ты компаунд файл эксплорером смотрел-то хоть?

ты компаунд файл эксплорером смотрел-то хоть? У меня эта прога не встала. Экзешник запускался и сразу же вис.
Так как особо не надеялся на эту прогу (ни разу не слышал то не стал искать решение проблемы установки. А стоило?

там скрытые обьекты за областью печати — удалить строки и столбцы за областью печати и проблема исчезнет

О, получилось — пересохранить файл xlsx в xls
закрыть файл
открыть файл
пересохранить его в формате xlsx. Лишний вес будет удален

Из При проверке совместимости при сохранении из xlsx в xls выдает, что якобы 5 формул ссылающихся на другой файл остались. Хотя все формулы убил вставкой значений.

«»»О, получилось — пересохранить файл xlsx в xls
закрыть файл
открыть файл
пересохранить его в формате xlsx. Лишний вес будет удален»»»

сработало, с 21 мб сохранилось в 3.3 мб ( , а потом пересохранил и получился 1.1

Спасибо ребята! У меня тоже была такая проблема. Файл весел 11мб, после сохранение в старый формат эксел и потом обратно на новый формат эксел — файл уменьшился 10раз и сейчас весит меньше 2-х мб

Почему тормозит Excel? Как уменьшить размер файла Excel? Решения проблемы.

Всем привет!

Сегодня расскажу о проблемах самого популярного табличного офисного редактора Microsoft Excel, и как с этим бороться…

Бывает так, что файл книги Microsoft Excel содержащий несколько листов по 1000 строк, с простыми формулами и без связанных таблиц начинает весить непомерно много — 100 или даже 200 мегабайт, при этом открывается файл очень долго, иногда бывает даже сохраняться отказывается. Что делать в этом случае? Давайте разбираться.

Большой размер файла Micosoft Excel причина зависаний и торможений.

В этой статье я хочу предложить несколько вариантов борьбы с «тяжелыми» файлами Microsoft Excel, которыми пользуюсь сам. Так же, в комментариях с удовольствием почитаю ваши варианты борьбы с тормозами и оптимизацией размера .xls и .xlsx файлов.

Первое. Пустые ячейки с данными.

Такая ситуация может возникнуть в следствии копирования. Это так же может произойти, если данные в документ excel вставляются листами или столбцами/строками из файлов, созданных в ИНФИН, 1С, SAP и других подобных ERP-системах. Объясняется это тем, что они генерируют в файл «пустые» ячейки (забитые пробелами) и объекты типа Надпись. Со временем файл становится очень объемным, так как забивается этими невидимыми глазу данными.
Для автоматического удаления этих пустых ячеек есть отличный макрос, который вычистит все пустые ячейки автоматически, после чего торможение при работе с файлом, а так же его размер сильно сократится:

Отработав, через какое-то время он очистит пустые ячейки, после чего можно сохранить документ и, как говориться, почувствовать разницу!

Второе. Очищаем неиспользуемый диапазон листа.

Если в вашей книге Excel есть таблица с данными, допустим 10 на 10, но это не значит что остальные ячейки листа пустые (особенно часто это происходит при копировании данных). Проверить это просто – нажмите на клавиатуре сочетание клавиш Ctrl+End и посмотрите куда переместится активная ячейка. Если она прыгнет на фактическую последнюю ячейку с данными на листе – отлично. А если вдруг ускачет сильно правее и/или ниже «в пустоту» – дело плохо: все эти ненужные пустые ячейки Excel тоже запоминает внутри файла.
Поправить ситуацию достаточно просто, для этого нужно:

    1. Выделяем первую пустую строку под вашей таблицей;
    2. Нажимаем сочетание клавиш Ctrl+Shift+стрелка вниз (после этого должны выделится все пустые строки до конца листа в книге);

    Поиск пустых строк в Microsoft Excel. Нашлось более 65000 пустых строк на листе.

  1. Удалите их, через меню ленты: Главная – Удалить – Удалить строки с листа (или горячей клавишей Ctrl+знак минус);
  2. Те же операции по удалению проделываем и со столбцами.
  3. Если ваша книга Excel содержит один лист, то пропускаем этот пункт и переходим к пункту 6, если у вас в книге много листов, то вышеприведенные операции нужно повторить на каждом листе, при этом, при нажатии комбинации клавиш Ctrl+End активная ячейка перемещается не на последнюю ячейку с заполненными данными, а в пустую ячейку, которая может быть ниже или правее.
  4. Сохраняем наш очищенный xlsx-файл. Теперь самое время проверить размер файла:

    Наш 111-мегабайтный файл Excel после очистки от пустых строк превратился в 1,23 Мб.

Как видите, достаточно несложные манипуляции могут помочь оптимизировать файлы Microsoft Excel, главное найти правильный подход.

Третье. Пересохраняем файл.

Бывает и так, что скрипт приведенный выше не панацея, и после того как он отработал размер файла не уменьшился. Переходим к варианту 2: попробуйте сохранить файл в бинарном формате Excel. Смотрите, что получилось у меня, на примере все того же 111-мегабайтного файла:

Сохраняем файл в бинарный формат .xlsb.

После сохранения наш файл сильно похудел и уменьшился в размере, при том что мы не проводили никаких дополнительных чисток:

«Похудевший» 111-мегабайтный файл Excel после сохранения в бинарный формат .xlsb.

Как видно из скриншота, наш файл стал занимать объем в почти в 22 раза меньший, просто при смене формата с .xlsx в xlsb. Открываться он стал быстрей, при этом мы не потеряли функционал файла, формулы, стили и оформление — все это сталось на месте.

Послесловие

Про Формат файла. Еще раз. Со всей внимательностью отнеситесь к формату файла. Если у вашего Excel-документа формат файла .xls, не поленитесь пересохранить его в новый формат .xlsx. И сейчас я кратко объясню почему это необходимо сделать:

Дело в том, что формат *.xls давно и безвозвратно устарел, Microsoft перетягивает поддержку этого формата от версии к версии лишь для устранения проблем совместимости со старыми документами.

Начиная с версии Excel 2007 компания-разработчик Microsoft ввела новые, современные форматы файлов.

Формат .xlsx — это структурированный, по сути заархивированный xml-файл, который при том же объеме данных способен быть в среднем 6 раз меньше устаревшего .xls.

Формат .xlsm используется для макросов.

Формат .xlsb — бинарный формат, который в 2 раза более компактен но уже по сравнению с .xlsx.

Если на работе или дома вы увидели, что коллеги или родные работают со старым форматом Excel-документов порекомендуйте им пересохранить их в новый, современный формат. Старый – это архаизм.

Заключение

На данный момент я рассказал вам о 3-х вариантах оптимизации и очистки .xls и .xlsx файлов от мусора, который увеличивает объем документа и приводит к торможению. Какой метод лучше и каким пользоваться? — В итоге решать вам.

Подписывайтесь на обновления! Всем удачи и добра!

Как уменьшить размер файла

Данный вопрос возникает периодически на различных форумах. Решил написать некоторые рекомендации по уменьшению веса файла. Применив их Вы сможете понять — действительно ли Ваши данные настолько раздувают файл или же в файле имеется много лишнего.
Почему я это пишу. Бывают ситуации, когда в файле всего один лист, данных на нем на 1000 строк и 20 столбцов. Никаких формул, только значения. Но размер файла непомерно велик — скажем 10 Мб. Этого недопустимо. Или есть различные формулы, но Вы все равно считаете, что размер файла не соответствует тому, что должно бы быть.

Автоматически убрать все лишнее из файла так же поможет команда надстройки MulTEx Оптимизировать книгу

При этом описанные ниже причины, которые влияют на размер файла, так же могут влиять и на его «быстродействие».

Следующие действия необходимо проделать на каждом листе книги:

  • Первое, что необходимо вспомнить — а не в общем ли доступе файл ? Если в Общем, то есть вероятность, что размер файла растет именно из-за этого. Дело в том, что при установке общего доступа к файлу, по умолчанию ведется журнал изменений, в который записываются все действия, произведенные в книге каждым пользователем за период, указанный в параметрах. Чем больше пользователей — тем сильнее раздувается файл. Как избавиться или изменить период:
    Excel 2007 и выше : вкладка Рецензирование (Review)Доступ к книге (Shared workbook) ;
    Excel 2003 : СервисДоступ к книге.
    Переходим на вкладку Подробнее(Advanced) и выбираем Не хранить журнал изменений (don’t keep change history) .
    Еще лучше — снять общий доступ с книги, сохранить. Если общий доступ все еще нужен, то открываем книгу и опять даем общий доступ, но теперь устанавливаем кол-во дней, в течении которых надо хранить журнал. По умолчанию — 30, но можно сделать меньше, если файл сильно разбухает за озвученный период. Далее неплохо бы отключить оба пункта в разделе Включить в личное представление (Include in personal view) : параметры печати (Print settings) и фильтры (Filter settings) . Личные представления позволяют сохранять для каждого пользователя файла свои параметры печати и настройки фильтров. Чем больше разных пользователей – тем больше настроек сохраняется и тем выше вероятность замедления работы файла и увеличения его размеров. А практическая ценность этих пунктов в ущерб удобству и быстроте работы с файлом сомнительная.
    После этого сохранить файл.
    Подробнее про общий доступ можно прочитать в статье: Ведение журнала сделанных в книге изменений
  • Убедитесь, что лист не содержит ячеек без данных , но занимающих пространство. Перейдя на лист, нажмите Ctrl+End. Активируется последняя ячейка листа. Если она расположена ниже или правее последних нужных рабочих данных — то удалите все строки и столбцы после последних данных таблицы. Удалите полностью строки. Сделать это быстро можно так. Нажимаем Ctrl+End и попадаем на последнюю ячейку. Выделяем эту строку и нажимаем Ctrl+Shift+стрелка Вверх. Выделились все строки вместе с последней строкой данных. Удерживая Shift жмем на клавиатуре стрелку Вниз. Тоже самое и со столбцами.
  • Посмотрите лист на предмет форматирования . Необходимо избегать форматирования ЦЕЛИКОМ столбцов либо строк. Это приводит к раздуванию файла. Все форматирование, выходящее за границы таблицы необходимо убрать. А еще лучше — вообще избегать излишнего форматирования, особенно если книгой никто, кроме Вас не пользуется. Вместо Заливки ячеек — Белым цветом ставьте «Нет заливки».Чтобы убрать все форматирование из ячеек: выделяете необходимый диапазон и:
    для Excel 2003 : ПравкаОчиститьФормат.
    В Excel 2007-2010 : вкладка Главная (Home)Очистить (Clear)Очистить форматы (Clear formats)
  • Проверить наличие в книге лишних объектов . Удаляем объекты:
    В Excel 2003: меню ПравкаПерейтиВыделитьОбъекты.
    в Excel 2007-2010: вкладка Главная (Home)Найти и выделить (Find & Select)Выделение группы ячеек (Go To Special. )Объекты (Objects) .
    Нажмите Delete. Все объекты на листе будут удалены. Правда есть небольшой шанс, что на листе так же есть и скрытые объекты. Тогда надо идти в редактор VBA (Alt+F11) —Ctrl+R. Отображаете окно свойств (F4). Находите объект ЭтаКнига (ThisWorkbook), в окне свойств этого объекта находите свойство DisplayDrawingObjects и ставите там значение — -4104xlDisplayShapes. После этого переходите опять на лист и повторяете операции по выделению и удалению объектов, описанные выше. Зачем все так сложно? То, что мы не видим все объекты на листе не означает, что их там нет. Плюс могут быть объекты нулевых размеров. Как правило «невидимые» и «нулевые» объекты попадают на лист в результате копирования из других файлов и работы различных макросов. И в некоторых случаях объекты переносятся с нулевой длиной и шириной или вообще невидимые. Как следствие — объект не видно, но файл увеличивается в размерах. И при каждом копировании он начинает увеличиваться в размерах в геометрической прогрессии, т.к. по умолчанию объекты копируются вместе с ячейками. После нескольких таких копирований-вставок файл начинает дико тормозить даже при выделении ячеек. Выделили ячейку, хотите выделить другую — файл задумался на пару секунд.
  • Если привыкли помечать ячейки примечаниями (вкладка РецензированиеСоздать примечание), то самое время задуматься так ли это необходимо. Т.к. примечание это тоже объект, то их избыточное количество на листах так же может привести к замедлению работы файла. Удалить все примечания из выделенных ячеек очень просто: выделяем ячейки — вкладка РецензированиеУдалить. Небольшой совет: если нет прямой необходимости в хранении примечаний именно таким образом, то самый правильный способ выделить отдельный столбец в таблице, в который заносить примечания для строки данных. Данный способ оптимально подходит для таблиц в правильной структуре. Тогда можно будет осуществлять поиск, сортировку и фильтрацию по примечаниям. Если примечаний уже много и информацию из них необходимо перенести в ячейки, то можно воспользоваться этим решением: Как получить текст примечания в ячейку?
  • Еще очень хорошо помогает удаление всех формул и связей . Удаление не в прямом смысле: заменить все формулы значениями, которые они вернули. Это можно сделать без макросов: выделяем все ячейки с данными на листе-Копируем-правая кнопка мыши-Специальная вставка-Значения. Но это не очень удобно, если листов много, поэтому я заготовил для этого еще и макрос, который проделает эту операцию на всех листах активной книги:

Sub All_Cells_In_All_Sheets_To_Value() Dim wsSh As Object For Each wsSh In Sheets wsSh.UsedRange.Value = wsSh.UsedRange.Value Next wsSh End Sub

Данный макрос необходимо вставить в стандартный модуль и выполнить (нажав F5 в редакторе VBA или непосредственно с листа: нажать Alt+F8-выбрать макрос All_Cells_In_All_Sheets_To_Value-Выполнить)
Так же в книге могут содержаться имена , которые тоже порой довольно неплохо прибавляют вес файлу. Посмотреть их можно, нажав сочетание клавиш Ctrl+F3на листе. Но может оказаться так, что имена будут скрытыми, и тогда Вы просто так их не увидите. Отобразить их можно при помощи следующего кода:

Sub All_Names_Visible() Dim objName As Object, wsSh As Object For Each objName In ActiveWorkbook.Names objName.Visible = True Next objName For Each wsSh In Sheets For Each objName In wsSh.Names objName.Visible = True Next objName Next wsSh End Sub

Данный код используется как и предыдущий. Он отображает все имена на листе и в книге. После выполнения макроса необходимо повторно нажать сочетание клавиш Ctrl+F3 на листе. Теперь Вы можете удалить ненужные Вам имена. Так же все имена можно сразу удалить при помощи следующего кода:

Sub Delete_All_Names() Dim objName As Object, wsSh As Object On Error Resume Next For Each objName In ActiveWorkbook.Names objName.Delete Next objName For Each wsSh In Sheets For Each objName In wsSh.Names objName.Delete Next objName Next wsSh End Sub

Только применяя данный код Вы должны быть уверены, что Вам действительно не нужны все имена в книге . Т.к. выполнив данный макрос Вы уже не сможете вернуть удаленные имена.

  • Проверьте, нет ли в книге скрытых листов , на которых может содержаться ненужная информация и с которыми можно проделать операции, описанные выше. Как их обнаружить можно узнать, прочитав эти статьи:
    Как сделать лист скрытым?
    Как сделать лист очень скрытым
  • После всех этих действий необходимо сохранить файл, чтобы изменения вступили в силу. Только после этого станет видно изменился размер файла или нет. Я бы советовал сохранять файл как копию, если не уверены, что удалили действительно ненужное.

    Статья помогла? Поделись ссылкой с друзьями!

    Excel works!

    Excel работает за вас

    Excel works!

    Thanks for Visiting

    Почему тормозит Excel? Большой размер файла Excel

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

    Тормоза программ пакета MS Office дело распространенное. Excel тормозит из-за целого ряда причин: неправильное использование функций программы (лишнее условное форматирование, сводные таблицы основанные на огромных массивах, лишние строки в документах). Excel тоже не идеален и тормоза происходят из-за не совершенства программной части (появляющиеся объекты, папка printerSettings в структуре). Поэтому рекомендуем вам пройтись по всем 10 шагам ниже и не останавливаться на одном.

    1. Тормозит Excel? Нужно убрать форматирование в виде таблиц

    Иногда диапазон отформатирован в виде специальной таблицы (Верхняя панель — вкладка Вставка — Таблица), это может привести к тому, что сильно тормозит Excel файл, особенно если таблицы большие.

    Чтобы определить такой формат, выделите любую ячейку таблицы. Появляется панель «Работа с таблицами» в верхнем меню, самая правая. Выберите всю таблицу затем вкладку Работа с Таблицами, Конструктор — Раздел сервис — Преобразовать в диапазон.

    2. Убрать излишнее условное форматирование (если Excel тормозит при прокрутке)

    Что такое условное форматирование, читайте здесь . Очень полезная штука, если правильно применять, если нет, то это заставит Ваш файл работать медленно.

    Дело в том, что при копирование ячеек, копируется и форматирование — если в файл постоянно копируются новая информация, то в ней сохраняются условия формата, в особенности условного форматирования.

    Убираем так. Выбираете лист. Выберите нужный диапазон или весь лист. В верхней панели Главная — Условное форматирование — Удалить правила — Удалить правила из выделенных ячеек/с листа. Жмем.

    3. Удалить лишние строки/столбцы (если ползунок прокрутки очень маленький)

    Самая частая проблема для excel с которой я встречаюсь. Если кто-то случайно переместился на конец листа (на строку номер 1 млн) и так сохранил книгу. Размер файла сразу увеличился. Дойти до конца таблицы можно и случайно — если нажать сочетание Ctrl + стрелка вниз или вправо. Бывает, что в конце книги находится какой-нибудь случайный символ или заливка.

    Главный признак тормозов — это размер ползунка, он очень маленький, когда файл сохранен неверно, как на картинке.

    Исправьте ситуацию, удалите лишние строки или столбцы. Найдите последнюю полезную ячейку для вас, выделите первую пустую ячейку после нее (а лучше первую пустую строку/столбец после нее), нажмите Ctrl+Shift+End . Такое сочетание клавиш выделяет ячейки ниже выбранной строки или правее выбранного столбца. Правая кнопка мыши – Удалить – Удалить строку или столбец (как правило, проходит долго). После удаления выберите ячейку А1 и сохраните файл. Ползунок должен увеличиться.

    4. Удалить лишние объекты

    Очень часто, особенно при копировании из других файлов или сайтов в таблицах прячутся скрытые объекты — рисунки, фигуры и т.п.

    Чтобы удалить такие объекты выполните макрос , нажмите Alt + F11 и копируйте текст ниже.

    Или выделите и удалите объекты вручную. Перейдите в меню Главная — Редактирование — Найти и выделить — пункт Выделение группы ячеек — Объекты. Теперь удаляйте.

    5. Удалить лишние данные в структуре файла Excel

    Даже опытные пользователи не знают, что файл Excel, как говорит Википедия , это файл-архив. Начиная с 2007 выпуска.

    Т.е. файл Excel открывается, к примеру, архиваторами 7-zip или WinRar. Внутри открытого файла могут храниться ненужные файлы, что тормозит Excel порой в десятки раз.

    Удалим неудобство? Сперва сделайте резервную копию файла 🙂 Затем запустите 7-zip или другой архиватор, меню «Файл» — «Открыть внутри». Возможно открыть файл кликнув правой кнопкой мыши — Открыть с помощью и выбрав .exe файл WinRar или 7-zip.

    Откроется архив, он же файл Excel c папками и файлам.

    Находим папки «drawings» и/или «printerSettings» (скорее всего они будут в папке xl) и удаляем их.

    Для WinRar делаем тоже самое.

    После чего открываем книгу как файл Excel, он немного поругается, выведет несколько системных сообщений, что не находит данных и т.п. На все окна нажимаем ОК, файл восстановится.

    Будьте внимательны, если в вашем файле есть нарисованные кнопки или другие фигуры, то удалять всю папку drawings — значит и удалять полезные фигуры.

    Поэтому, в папке, удалите только файлы vmlDrawing.vml, они могут накапливать информацию и весить до 100 мб.

    6. Тормозит Excel — правильно настройте сводные таблицы

    Если сводная таблица ссылается на большой диапазон ячеек от 10 тыс. строк, она хранит результаты расчетов, которые могут быть очень большими. От этого вся книга excel тормозит, конечно же. Чтобы устранить эту причину, нажмите на сводную таблицу правой кнопкой мыши — Параметры сводной таблицы — вкладка Данные — уберите галочку Сохранять исходные данные вместе с файлом.

    Что позволит уменьшить файл почти в два раза.

    7. Измените формат файла на .xlsb

    Если вы работаете с огромными таблицами и ваши файлы больше 0,5 мб весом, то лучше сохранять такие книги в формате .xlsb . Двоичный формат книги Excel, т.е. специальный формат для создания «базы данных» на основе электронных таблиц. Если сохранить большой файл в таком формате, вес книги уменьшится в два-три раза. Расчеты в файл тоже будут проходить быстрее, в некоторых случаях в 2 раза быстрее.

    8. Установлен неопознанный принтер

    Если у Вас на компьютере не определен принтер, т.е. не стоит принтер по умолчанию, то зайдите в устройства и принтеры и измените принтер по умолчанию на любой другой (даже если физически принтера нет), если принтер есть, лучше сменить дрова.

    Бывает что даже при удалении настроек принтера из пункта 5 настройки принтера тормозят файл.

    9. Удалите файл PERSONAL

    Зайдите в …Application DataMicrosoftExcelXLSTART или …Microsoft OfficeOffice12 найдите в этих папках файл под название PERSONAL и удалите его. Подробнее читайте здесь.

    10. Замените много созданных формул макросами

    Часто матрица 10 000 строк на 10 столбцов со сложными формулами ссылающимися на другие листы, хуже книги, жутко тормозит файл. Попробуйте формульные расчеты заменить на записанные макрорекордером макросы , переводящий формулы в скопированные как значения числа или текст. Это поможет, если с файлом с производится много действий — а значит файл часто пересчитывается. Сам недавно попробовал — помогло. Пишите в комментариях, если нужна помощь.

    11. Уменьшите размер рисунков

    Самый простой способ для версии 2007 и выше — выбрать рисунок, на верхней панели появиться вкладка Работа с рисунками — Формат.

    Найдите раздел Изменить и выберите действия по сжатию рисунка, подробнее читайте здесь .

    12. Перейдите на поздний Excel — 2013 или 2016

    Разработчики нашего любимого редактора действительно не останавливаются в развитии продукта. Проведя ряд экспериментов, я выявил, что большинство сложных операций таких как расчет ячеек, выполнение макроса, сохранение и другие в версии 2016 выполняются быстрее

    Для некоторых случаев Excel 2007 просто отказывается выполнять действия с файлом, тогда как в современных выпусках программы файл работает.

    Так что еще один хороший способ ускорить работу в Excel — перейти на MS Office 2013 и выше.

    Теперь попробуйте сами.

    Если эти 12 шагов не помогли, то лучше перенесите или скопируйте всю информацию в новый файл. Возможно поврежден сам файл.

    Логичное продолжение статьи — оптимизация ресурсов компьютера под использование Excel — читайте в статье .

    Если ничего не помогает пишите комментарии, постараемся помочь.

    Похожие статьи

    Ссылка на основную публикацию
    Похожие публикации
    ×
    ×
    Adblock
    detector