62123 11.11.2012 Скачать пример
Если в один прекрасный момент вы осознаете, что ваш основной рабочий файл в Excel разбух до нескольких десятков мегабайт и во время открытия файла можно смело успеть налить себе кофе, то попробуйте пробежаться по описанным ниже пунктам — возможно один или несколько из них укоротят вашего «переростка» до вменяемых размеров и разгонят его «тормоза» 🙂
Проблема 1. Используемый диапазон листа больше, чем нужно
Если ваша таблица занимает 5 на 5 ячеек, то это отнюдь не означает, что Excel запоминает при сохранении этого файла только 25 ячеек с данными.
Если вы в прошлом использовали какие-либо ячейки на этом листе, то они автоматически включаются в используемый диапазон (так называемый Used Range), который и запоминается при сохранении книги.
Проблема в том, что при очистке используемых ячеек Excel далеко не всегда автоматически исключает их из используемого диапазона, т.е. начинает запоминать в файле больше данных, чем реально имеется.
Проверить это просто – нажмите на клавиатуре сочетание клавиш Ctrl+End и посмотрите куда переместится активная ячейка. Если она прыгнет на фактическую последнюю ячейку с данными на листе – отлично. А если вдруг ускачет сильно правее и/или ниже «в пустоту» – дело плохо: все эти ненужные пустые ячейки Excel тоже запоминает внутри файла.
Лечится это, тем не менее, достаточно легко:
- Выделите первую пустую строку под вашей таблицей
- Нажмите сочетание клавиш Ctrl+Shift+стрелка вниз – выделятся все пустые строки до конца листа.
- Удалите их, нажав на клавиатуре Ctrl+знак минус или выбрав на вкладке Главная – Удалить – Удалить строки с листа (Home – Delete – Delete rows).
- Повторите то же самое со столбцами.
- Повторите все вышеописанные процедуры на каждом листе, где при нажатии на Ctrl+End активная ячейка перемещается не на фактическую последнюю ячейку с данными а «в пустоту» ниже и/или правее.
- Сохраните файл (обязательно, иначе изменения не вступят в силу!)
Если в вашей книге очень много таких листов, то проще, наверное, использовать короткий макрос.
Проблема 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 и особенно пользовательские формы с внедренной графикой могут весьма заметно утяжелять вашу книгу. Для удаления:
- нажмите Alt+F11, чтобы войти в редактор Visual Basic
- найдите окно Project Explorer’а (если его не видно, то выберите в меню View — Project Explorer)
- удалите все модули и все формы (правой кнопкой мыши — Remove — дальше в окне с вопросом о экспорте перед удалением — No):
Также код может содержаться в модулях листов — проверьте их тоже. Также можно просто сохранить файл в формате XLSX без поддержки макросов — все макросы и формы умрут автоматически. Также можно воспользоваться инструментом Очистить книгу от макросов из надстройки PLEX.
Проблема 5. Именованные диапазоны
Если в вашем файле используются именованные диапазоны (особенно с формулами, динамические или получаемые при фильтрации), то имеет смысл от них отказаться в пользу экономии размера книги. Посмотреть список имеющихся диапазонов можно нажав Ctrl+F3 или открыв окно Диспетчера имен (Name Manager) на вкладке Формулы (Formulas):
Также вычищайте именованные диапазоны с ошибками (их можно быстро отобрать с помощью кнопки Фильтр в правом верхнем углу этого окна) — они вам точно не пригодятся.
Проблема 6. Фотографии высокого разрешения и невидимые автофигуры
Если речь идет о фотографиях, добавленных в книгу (особенно когда их много, например в каталоге продукции), то они, само-собой, увеличивают размер файла.
Советую сжимать их, уменьшая разрешение до 96-150 точек на дюйм. На экране по качеству это совершенно не чувствуется, а размер файла уменьшает в разы.
Для сжатия воспользуйтесь кнопкой Сжать рисунки (Compress pictures) на вкладке Формат (Format):
Кроме видимых картинок на листе могут содержаться и невидимые изображения (рисунки, фотографии, автофигуры). Чтобы увидеть их, выделите любую картинку и на вкладке Формат (Format) нажмите кнопку Область выделения (Selection Pane).
Для удаления вообще всех графических объектов на текущем листе можно использовать простой макрос:
Sub Delete_All_Pictures()
'макрос для удаления всех картинок на текущем листе
Dim objPic As Shape
For Each objPic In ActiveSheet.Shapes
objPic.Delete
Next objPic
End Sub
Проблема 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).
Источник: https://www.planetaexcel.ru/techniques/11/114/
Как уменьшить объем Excel файла и ускорить работу с таблицей
XLS таблицы могут весить несколько десятков мегабайт. Если для жесткого диска или даже самой небольшой флешки это не критично, то для скорости обработки самого файла – ощутимо. Более громоздкие файлы открываются медленнее, работать в них сложнее.
https://www.youtube.com/watch?v=2w8MbCjCntY
Предлагаем инструкцию, как можно уменьшить размер Excel-файла и ускорить работу с таблицами.
Уменьшить рабочую зону
Часто рабочая зона xls-файла не соответствует реальной. При открытии программа обрабатывает кучу пустых ячеек, которые не нужны для работы. Соответственно увеличивается и размер файла, и скорость работы в нем.
Откройте таблицу и нажмите клавиши Ctrl+End. Программа переместит вас на крайнюю строку, которую она считает рабочей. Сравните, где реально заканчивается ваша таблица и номер крайней ячейки.
Например, у вас таблица реально заканчивалась на 667 строке, а после нажатия клавиш Ctrl+End нас переместили на 1971 строку. Выходит, что 1304 строки нам не нужны, но программа считает их рабочими – и обрабатывает при открытии.
Нам нужно удалить лишние строки и ячейки. Кликаем на первую пустую ячейку под таблицей, нажимаем комбинацию клавиш Ctrl+Shift и стрелку вниз. Так выделятся все пустые строки. Забавно, что у нас выделилось более 60 тысяч строк, а не до 1971.
Кликаем правой кнопкой мышки на выделенную область и нажимаем «Удалить». Пользуйтесь только таким способом удаления, не нажимайте клавишу Del. Потому что с клавишей Delete удаляется только содержимое таблицы, но не сама таблица.
- После этого появится сообщение, где мы выбираем «Строку» и нажимаем ОК.
- Размер файла должен уменьшиться, и время на его обработку тоже сократится.
Лишнее форматирование
Сделайте таблицу с минимальным форматированием. Если специфика работы не требует выделения ячеек другим цветом и другой наглядности, откажитесь от этого. Даже выделение текста жирным шрифтом или курсивом – уже на несколько десятых килобайт утяжеляет таблицу.
То же касается, если таблица с картинками. Удалите лишние изображения.
Сжатие изображений
Но если все-таки нельзя удалить картинку или фото из документа, ее можно сжать. Выделяем изображение и кликаем на вкладку «Формат». Здесь нам нужно выбрать пункт «Сжать рисунки».
Выставляем настройки так, как показано на скриншоте, и нажимаем «ОК».
Качество изображение почти не изменилось, но его размер сократился. Так можно проделать и с другими картинками в таблице.
Удаление ссылок
Внутренние и внешние ссылки таблицы утяжеляют файл. Избавьтесь по возможности от них. Но делать это нужно осторожно: если ссылки в таблице динамические и будут изменяться со временем, удалять такое содержимое нельзя. Если же таблица содержит статические данные, которые не будут изменяться, удалите ссылки (замените их на статические).
Выделяем область ссылок. Копируем их клавишами Ctrl+C, а затем кликаем правой кнопкой мышки по выделенной области. Выбираем в параметрах вставках пункт «Значение» (обозначено на скриншоте).
Сохраняем файл в другом формате
Формат XLS – несколько устаревший, потому что сейчас новые версии Excel используют сжатый формат XLSX (по аналогии с вордом – docx). Чтобы сохранить файл в другом формате, кликните вверху таблицы контекстное меню «Файл» и нажмите «Сохранить как».
Сохраните файл на компьютер, выбрав тип файла «Книга Excel». Таблица сохранится в новом расширении xlsx и будет весить меньше. Для сравнения: наш файл xls весил чуть больше 200 Кб, а новый xlsx более чем в два раза меньше – 78 Кб.
Сжатие файлов онлайн
Можно воспользоваться онлайн-сервисами, которые предлагают сжать эксель файл. Один из таких – Wecompress (https://www.wecompress.com/ru/). Заходим на главную страницу и выбираем файл, нажав на плюсик.
Дождитесь окончания сжатия. Чем больше размер файла, тем дольше это займет времени.
- В нашем случае сервис вообще не нашел элементов, которые можно сжать, о чем мы увидели сообщение.
- Попробуем взять таблицу с изображением, чтобы посмотреть, как качественно работает сервис.
Мы загрузили файл размером 856 Кб, а вышло в итоге 356 Кб. Сервис быстро удалил ровно 500 Кб лишнего объема.
Источник: https://public-pc.com/kak-umenshit-razmer-fajla-excel/
Почему тормозит Excel, 12 способов улучшить работу с файлами!
Добрый день уважаемый читатель!
Эту статью я хочу рассмотреть тему эффективности Excel и узнать почему тормозит Excel, а также предоставить 12 способов улучшить работу файлов Excel! Конечно, если вы используете небольшие таблицы или вам не интересно расширение границ использования Excel, тогда статья будет не интересна, а вот если всё наоборот, приступим….
Когда же возникает такие случаи, когда файлы Excel «тормозят» и их работоспособность стремится к малой величине. Возможно, присланный вам файл очень большой и тяжёлый и поэтому долго сохраняется или он маленький, но всё то же самое… Давайте выясним причины таких проблем и основные способы их победить.
Проблемы с «тормознутостью» MS Office это довольно распространённое явление в работе Excel. Проблемная работа Excel может возникать по многим причинам: излишнее условное форматирование, чрезмерное использование функций Excel, созданные из больших массивов данных сводные таблицы, дополнительные и ненужные строки и столбцы в таблицах, и многое другое.
А теперь перейдем от теории к действию и рассмотрим 12 способов, которые позволит вам, избавится от «тормозов» Excel и начать комфортно работать:
1. Уменьшаем размеры картинок
Самым первым способом уменьшения размера вашего файла, это поработать над картинками в нём. Но способ действителен, если изображения вы всё же использовали.
Когда вы добавляли картинку через меню на панели управления «Вставка» в блоке «Иллюстрации» нажимали «Рисунок», тогда в файл вшивался рисунок с полным объёмом.
А вот теперь необходимо внести изменения, установите курсор на картинку, появится новая вкладка «Работа с рисунками» с под вкладкой «Формат». В блоке «Изменения» кликаете на кнопку «Сжать рисунки».
В диалоговом окне «Сжатие рисунков» указываете подходящий вам вариант уменьшения размера и нажимаете «Ок».
Не стоит забывать о том, что картинки могут скрываться и в примечаниях.
2. Заменим макросами большие формулы
В случаях, когда таблица большая, на десятки тысяч строк, и вмещает в себя много сложных формул, которые ссылаются на разнообразные книги и листы приводят к тому, что тормозит Excel.
Для улучшения стоит применять созданные макрорекордерных макросов вместо написанных формул, так как они превратят формулы в скопированные как значения тексты, цифры и значения.
Очень поможет в случаях множества действий с файлом, когда производится частое пересчитывание данных всего файла.
3. Убрать форматирование таблиц Excel
В случаях, когда к диапазону данных применено форматирование в виде специальной таблицы, а сами таблицы достигают большого размера, это может привести к значительным сложностям в работе Excel.
Определить как именно отформатированная таблица можно просто, установив курсор на абсолютно любую ячейку, появится дополнительная вкладка в панели управления «Работа с таблицами».
Выбираете вкладку «Конструктор», ищете раздел «Сервис», нажимаете кнопку «Преобразовать в диапазон» и подтверждаете, что вам нужно преобразовать вашу таблицу в обычную.
4. Удаляем ненужные столбцы и строки
Это достаточно распространённая проблема при работе в Excel.
При обыкновении пользователь случайно перемещается с помощью горячего сочетания клавиш Ctrl + стрелка вправо или вниз, нажатых случайно, и переносится в конец листа, да так и сохраняет рабочую книгу, при этом значительно ее утяжеляет. Особенно это происходит, когда в конец книги добавляется случайный символ, знак или заливка.
Проверить такой вариант возможно по характерному признаку, это очень маленький ползунок.
5. Заменить формат рабочей книги на *.xlsb
В случаях, когда ваша работа связана с огромными таблицами и их размер достигает больших объёмов, то следует сохранять рабочие книги в формате *.xlsb. Это расширение хранится как двоичный формат, своеобразный специальный формат для создания и хранения ваших «баз данных» имеющих в основе электронные таблицы.
Когда сохранение будут произведены в этом формате, любой большой файл уменьшится сразу же в 2-3 раза, кстати, скорость вычислений также увеличится на несколько порядков, что будет вас радовать.
6. Убираем чрезмерное условное форматирование
Несмотря на всю полезность условного форматирования, его чрезмерное использование может и привести и к проблемам, ваша рабочая книга может подтормаживать. Это может произойти, даже без вашего ведома, просто в процессе работы вы копируете ячейки вместе с форматами и форматированием, а это не проходит бесследно, они накапливаются незаметно и тормозят работу файла.
Для удаления всего лишнего, для начала, выбираете необходимый диапазон, а можно и весь рабочий лист.
Следующим шагом в панели управления, во вкладке «Главная» в разделе «Стили» выбираете пункт с выпадающим меню «Условное форматирование», дальше нужен пункт «Удалить правила» и выбираете нужный подпункт удаления.
7. Удаляем ненужные данных внутри структуры файла Excel
Я могу поспорить, что далеко не каждый пользователь знает, что файлы Excel представляют собой своеобразный архив и такая структура файла начала свою жизнь с 2007 выпуска. А это означает, что теперь файлы Excel можно открыть архиватором, таким как WinRar. А вот внутри файла и могут находиться файлы, которые, в некоторых случаях значительно тормозят Excel.
Для проведения процедуры по уменьшению размера, перестрахуйтесь, и сделайте резервное копирование вашего файла.
Затем откройте файл с помощью контекстного меню, открываем файл, нажав на мышке правую кнопку и выбрав пункт «Открыть с помощью» и с доступных программ выбираете программу архиватор.
Или, второй вариант, открываете архиватор и в меню «Файл» кликаете на пункт «Открыть внутри». Результатом любого из вариантов будет открытие файла Excel, как архива с файлами и папками.
В архиве, скорее всего в папке «xl», удалите папки «printerSettings» и «drawings». После всех мучений запускаем снова файл и на все системные возмущение соглашаемся кнопкой «Ок», файл восстановиться и запустится.
Обращаю ваше внимание, что если файл содержит рисованные объекты типа кнопок или фигур то удалять всю папку «drawings» не стоит, вместе с ней испарятся и фигурки. Достаточно в папке удалить vmlDrawing.vml который вмещает разнообразную информацию и может достигать больших размеров.
8. Неправильно настроенная печать на принтер
Когда вы не установили принтер по умолчанию и система не может определить настройки текущего принтера, необходимо чётко обозначить, куда будет происходить отправка на печать. Если принтер невозможно опознать, замените драйвер устройства.
Иногда случается так, что стирании настроек принтера из пункта 7, может привести к тому, что неправильные настройки принтера тормозят весь файл.
9. Сменить версию Excel на более позднюю
Ни что не стоит на месте, даже наша планета, так и Excel развивается, ведь совершенству нет предела. Меняется и развивается программный продукт, оптимизируется программный код, что позволяет, иногда значительно, повысить продуктивность работы с таблицами и расчёты формул, быстродействие может увеличиться до 20% в более новых версиях, например в 2016 относительно 2007.
Также частенько встречается ситуация когда Excel версии 2007 не может работать с текущим файлом, а вот в более поздних версиях никаких проблем нет и всё работает отлично.
Усовершенствуйте версию, переходите на более продуктивные продукты MS Office, желательно от 2013 версии и выше.
10. Сносим файл «Personal.*»
Основное назначения сего файла, это хранение информации о предыдущих работах в Excel. Он помогает записывать и запоминать макрос, хранить формат данных для ваших всех книг.
Проще говоря он нужен для того что бы из раза в раз не делать те же самые действия по форматированию файла, а при первоначальном открытии все персональные настройки сохраняются в специальный файл и воспроизводятся при открытии.
Проблемы могут возникать, если начнет, тормозит файл персональных настроек. Для устранения проблемы, воспользуйтесь принципом, нет файла, нет проблем. Найдите С:…Application DataMicrosoftExcelXLSTART или С:…Microsoft OfficeOffice12 и где то в недрах этих папок ищете файл «Personal.*» и сносите его.
11. Производим оптимальную настройку сводных таблиц
Когда вы в сводной таблице ссылаетесь на огромные диапазоны от десятка тысяч строк, она начинает все результаты своих расчётов, которые становятся колоссальными, хранить в себе. И это становится причиной общего торможения при работе с файлом.
Для устранения этой причины, установите курсор на таблице, вызовите контекстное меню правой кнопкой мыши, потом выберите пункт «Параметры сводной таблицы» в диалоговом окне на вкладке «Данные» снимите галочку в пункте «Сохранять исходные данные вместе с файлом».
Этими действиями вы можете уменьшить файл практически в два раза.
12. Убираем ненужные объекты
Частенько когда вы переносите или копируете информацию из других рабочих файлов или сайтов, в структуре таблиц могут содержаться разнообразные скрытые объекты типа фигур, рисунков и прочее.
Для удаления таких ненужных объектов необходимо запустить макрос, кликните горячую комбинацию клавиш Alt + F11 для вызова редактора и вставьте код:
sub DelObject()
For Each i In ActiveSheet.Shapes
i.Delete
Next
end sub
|
Ну, или же просто ручками уберите ненужные вам объекты.
Для этого в панели управления выбираете на вкладке «Главная» в блоке «Редактирование» в выпадающем меню «Найти и выделить» выбираете пункт «Выделение группы ячеек» и в диалоговом окне отмечаете пункт «Объекты» нажимаете «ОК». Теперь можно всё удалить.
Теперь вы знаете 12 способов, что нужно делать, когда тормозит Excel, но даже если и они вам не помогли, тогда попробуйте скопировать и перенести нужную информацию со старого в новый файл, существует вероятность, что файл имеет повреждения. Всегда надо страховаться.
Я очень хочу, чтобы о таких возможностях выхода с трудных ситуаций и улучшения работоспособности ваших файлов, вы знали еще больше и могли применить их в своей работе. Если у вас есть чем дополнить меня пишите комментарии, я буду их ждать с нетерпением, ставьте лайки и делитесь полезной статьей в соц.сетях!
Не забудьте подкинуть автору на кофе…
Статья помогла? Поделись ссылкой с друзьями, твитни или лайкни!
Источник: http://topexcel.ru/pochemu-tormozit-excel-12-sposobov-uluchshit-rabotu-s-fajlami/
Почему тормозит Excel? Большой размер файла. Не запускается файл Excel 2003, 2007, 2010, 2013
Вам прислали файл Excel большого размера? Он сильно тормозит и долго сохраняется? После каждого действия необходимо ждать. При этом, в файле не так много информации. Почему тормозит Excel, причины и следствия, а главное как с этим бороться? Сейчас разберемся.
Тормоза программ пакета MS Office дело распространенное.
Excel тормозит из-за целого ряда причин: неправильное использование функций программы (лишнее условное форматирование, сводные таблицы основанные на огромных массивах, лишние строки в документах).
Excel тоже не идеален и тормоза происходят из-за не совершенства программной части (появляющиеся объекты, папка printerSettings в структуре). Поэтому рекомендуем вам пройтись по всем 10 шагам ниже и не останавливаться на одном.
1. Тормозит Excel? Нужно убрать форматирование в виде таблиц
Иногда диапазон отформатирован в виде специальной таблицы (Верхняя панель — вкладка Вставка — Таблица), это может привести к тому, что сильно тормозит Excel файл, особенно если таблицы большие.
Чтобы определить такой формат, выделите любую ячейку таблицы. Появляется панель «Работа с таблицами» в верхнем меню, самая правая. Выберите всю таблицу затем вкладку Работа с Таблицами, Конструктор — Раздел сервис — Преобразовать в диапазон.
2. Убрать излишнее условное форматирование (если Excel тормозит при прокрутке)
Что такое условное форматирование, читайте здесь. Очень полезная штука, если правильно применять, если нет, то это заставит Ваш файл работать медленно.
Дело в том, что при копирование ячеек, копируется и форматирование — если в файл постоянно копируются новая информация, то в ней сохраняются условия формата, в особенности условного форматирования.
Убираем так. Выбираете лист. Выберите нужный диапазон или весь лист. В верхней панели Главная — Условное форматирование — Удалить правила — Удалить правила из выделенных ячеек/с листа. Жмем.
3. Удалить лишние строки/столбцы (если ползунок прокрутки очень маленький)
Самая частая проблема для excel с которой я встречаюсь. Если кто-то случайно переместился на конец листа (на строку номер 1 млн) и так сохранил книгу. Размер файла сразу увеличился. Дойти до конца таблицы можно и случайно — если нажать сочетание Ctrl + стрелка вниз или вправо. Бывает, что в конце книги находится какой-нибудь случайный символ или заливка.
Главный признак тормозов — это размер ползунка, он очень маленький, когда файл сохранен неверно, как на картинке.
Исправьте ситуацию, удалите лишние строки или столбцы. Найдите последнюю полезную ячейку для вас, выделите первую пустую ячейку после нее (а лучше первую пустую строку/столбец после нее), нажмите Ctrl+Shift+End.
Такое сочетание клавиш выделяет ячейки ниже выбранной строки или правее выбранного столбца. Правая кнопка мыши – Удалить – Удалить строку или столбец (как правило, проходит долго). После удаления выберите ячейку А1 и сохраните файл.
Ползунок должен увеличиться.
4. Удалить лишние объекты
Очень часто, особенно при копировании из других файлов или сайтов в таблицах прячутся скрытые объекты — рисунки, фигуры и т.п.
Чтобы удалить такие объекты выполните макрос, нажмите Alt + F11 и копируйте текст ниже.
sub DelOb()
For Each i In ActiveSheet.Shapes
i.Delete
Next
end sub
Или выделите и удалите объекты вручную. Перейдите в меню Главная — Редактирование — Найти и выделить — пункт Выделение группы ячеек — Объекты. Теперь удаляйте.
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 выполняются быстрее ~на 15% от 2007.
- Для некоторых случаев Excel 2007 просто отказывается выполнять действия с файлом, тогда как в современных выпусках программы файл работает.
- Так что еще один хороший способ ускорить работу в Excel — перейти на MS Office 2013 и выше.
- Теперь попробуйте сами.
Если эти 12 шагов не помогли, то лучше перенесите или скопируйте всю информацию в новый файл. Возможно поврежден сам файл.
Логичное продолжение статьи — оптимизация ресурсов компьютера под использование Excel — читайте в статье.
Если ничего не помогает пишите комментарии, постараемся помочь.
Поделитесь нашей статьей в ваших соцсетях:
Источник: https://excelworks.ru/2015/03/18/tormozit-excel/
Как уменьшить размер файла
Хитрости » 1 Май 2011 Дмитрий 228819 просмотров
Данный вопрос возникает периодически на различных форумах. Решил написать некоторые рекомендации по уменьшению веса файла. Применив их Вы сможете понять — действительно ли Ваши данные настолько раздувают файл или же в файле имеется много лишнего.
Почему я это пишу. Бывают ситуации, когда в файле всего один лист, данных на нем на 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 и ставите там значение — -4104—xlDisplayShapes. После этого переходите опять на лист и повторяете операции по выделению и удалению объектов, описанные выше. Зачем все так сложно? То, что мы не видим все объекты на листе не означает, что их там нет. Плюс могут быть объекты нулевых размеров. Как правило «невидимые» и «нулевые» объекты попадают на лист в результате копирования из других файлов и работы различных макросов. И в некоторых случаях объекты переносятся с нулевой длиной и шириной или вообще невидимые. Как следствие — объект не видно, но файл увеличивается в размерах. И при каждом копировании он начинает увеличиваться в размерах в геометрической прогрессии, т.к. по умолчанию объекты копируются вместе с ячейками. После нескольких таких копирований-вставок файл начинает дико тормозить даже при выделении ячеек. Выделили ячейку, хотите выделить другую — файл задумался на пару секунд. - Если привыкли помечать ячейки примечаниями (вкладка Рецензирование —Создать примечание), то самое время задуматься так ли это необходимо. Т.к. примечание это тоже объект, то их избыточное количество на листах так же может привести к замедлению работы файла. Удалить все примечания из выделенных ячеек очень просто: выделяем ячейки — вкладка Рецензирование —Удалить. Небольшой совет: если нет прямой необходимости в хранении примечаний именно таким образом, то самый правильный способ выделить отдельный столбец в таблице, в который заносить примечания для строки данных. Данный способ оптимально подходит для таблиц в правильной структуре. Тогда можно будет осуществлять поиск, сортировку и фильтрацию по примечаниям. Если примечаний уже много и информацию из них необходимо перенести в ячейки, то можно воспользоваться этим решением: Как получить текст примечания в ячейку?
- Еще очень хорошо помогает удаление всех формул и связей. Удаление не в прямом смысле: заменить все формулы значениями, которые они вернули. Это можно сделать без макросов: выделяем все ячейки с данными на листе-Копируем-правая кнопка мыши-Специальная вставка-Значения. Но это не очень удобно, если листов много, поэтому я заготовил для этого еще и макрос, который проделает эту операцию на всех листах активной книги:
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 SubSub 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 SubSub 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 SubSub 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 Только применяя данный код Вы должны быть уверены, что Вам действительно не нужны все имена в книге. Т.к. выполнив данный макрос Вы уже не сможете вернуть удаленные имена.
- Проверьте, нет ли в книге скрытых листов, на которых может содержаться ненужная информация и с которыми можно проделать операции, описанные выше. Как их обнаружить можно узнать, прочитав эти статьи:
Как сделать лист скрытым?
Как сделать лист очень скрытым
После всех этих действий необходимо сохранить файл, чтобы изменения вступили в силу. Только после этого станет видно изменился размер файла или нет. Я бы советовал сохранять файл как копию, если не уверены, что удалили действительно ненужное.
Также см.:
Оптимизировать книгу
Файл долго фильтрует строки/тормозит при фильтрации
Статья помогла? Поделись ссылкой с друзьями!
Источник: https://www.excel-vba.ru/chto-umeet-excel/kak-umenshit-razmer-fajla/
Как уменьшить размер файла Excel и заставить его работать быстрее
Каждый, кто часто имеет дело с Excel и созданными в нем документами, рано или поздно сталкивается с проблемой медленной работы файла. «Файл тормозит, что делать?»
Такой вопрос часто можно увидеть на форумах, тематических сайтах или просто в списке запросов поисковика. Чаще всего подобная проблема сопровождается гипертрофированными размерами книги Excel. Из этой статьи вы узнаете несколько самых действенных способов уменьшения размера файла и ускорения его работы.
1. Уменьшаем размер используемого диапазона листа
Наиболее часто проблема увеличения размера книги и ее торможения бывает связана с разросшимся используемым диапазоном листа.
Это тот диапазон, который Excel запоминает и с которым каждый раз работает.
Если вы используете на листе всего несколько ячеек, но когда то у вас там была таблица в 1000 строк, то даже после ее удаления Excel будет обрабатывать все эти строки, тем самым замедляя работу файла.
Чтобы проверить, есть ли на листе лишние пустые столбцы и строки нужно нажать сочетание клавиш «Ctrl+End». Вы попадете в последнюю ячейку, которую использует программа. Если она явно за пределами ваших данных, то лишние строки и столбцы стоит удалить. Для этого в столбце А встаем в ячейку ниже последней нужной нам строки и нажимаем «Ctrl+Shift+End».
Ручное выделение лишних ячеек
Выделятся все лишние строки. Удаляем их. То же самое повторяем для столбцов. Если их много – файл может зависнуть. В таком случае проще использовать небольшой макрос.
Нажмите Alt+F11 или кнопку Visual Basic на вкладке Разработчик (как ее активировать — показывализдесь), вставьте новый модуль через меню Insert — Module и скопируйте туда код макроса:
- Sub УдалениеЛишнихЯчеек()
- For Each Sht In ActiveWorkbook.Worksheets
- Sht.UsedRange
- Next Sht
- End Sub
- Чтобы запустить его — на той же вкладке (1) нажмите кнопку «Макросы» (2), выберите в списке «УдалениеЛишнихЯчеек» (3) и нажмите кнопку «Выполнить» (4).
- После проделывания всех операций обязательно сохраняем книгу.
Запуск макроса
2. Пересохраняем файл в другом формате
Если кто-то еще пользуется файлами в старом формате XLS, но уже сидит на более новом ПО (Excel 2007 и новее), то есть смысл пересохранить файл в один из новых форматов: XLSX, XLSM, XLSB.
Они более современные, лучше оптимизированы, весят меньше и работают быстрее. Самый компактный из них – XSLB.
При сохранении в этом формате размер файла существенно уменьшится (даже если пересохранить в него «новый» XLSX).
3. Удаляем лишние объекты из книги
Часто при копировании в файл данных из сторонних программ (например, 1С) вместе с ними копируются лишние объекты (фигуры, картинки и прочее), которые не всегда можно сразу заметить на листе. Чтобы проверить, есть ли в файле лишние объекты, нужно найти на ленте команду «Найти и выделить» (1) и выбрать «Область выделения» (2). Откроется список объектов листа (3).
Отображение списка объектов листа
Удалить все объекты можно выделив их и нажав клавишу Delete. Чтобы выделить все объекты снова используем команду «Найти и выделить» (1), выбираем пункт «Выделить группу ячеек» (2) и в открывшемся окне выбираем «Объекты» (3).
Вызываем окноУдаляем объекты
Если объектов много, то имеет смысл удалять их простым макросом. Код — ниже. Его нужно запустить поочередно на каждом листе.
- Sub УдаляемОбъекты()
- For each shp in ActiveSheet.Shapes
- shp.delete
- Next shp
- End Sub
4. Уменьшаем размер сводных таблиц
Если в вашем файле есть сводные таблицы, то имеет смысл отключить хранение данных для них вместе с файлом. Это потребует обновления таблицы каждый раз при открытии книги, но уменьшит размер файла.
Для отключения этой опции выберите нужную сводную таблицу, перейдите в ее Параметры (правая кнопка мыши — Параметры сводной таблицы) и на вкладке Данные (1) снимите галочку с пункта «Сохранять исходные данные вместе с файлом» (2).
Изменение параметров сводной таблицы
5. Заменяем формулы на значения
Если в файле содержится очень много формул, то нужно постараться везде, где это возможно, заменить их на значения. Постоянный пересчет сильно замедляет работу файла. И хоть его можно отключить (как — смотри здесь), рекомендуем избавляться ото всех лишних формул на листах.
6. Удаляем лишнее форматирование
Красивые документы нравятся всем, но чем более пёстрый лист у Вас получился, тем медленнее будет работать файл. А условное форматирование сказывается на быстродействии еще больше, так как основано на формулах и постоянно пересчитывается. Рекомендуем удалять все лишние форматы, оставляя только то, что действительно нужно (как очистить форматы — смотри здесь). Минимализм сейчас в моде.
Чтобы удалить лишние правила условного форматирования выбираем на вкладке «Главная» инструмент «Условное форматирование», кнопка «Управление правилами». В открывшемся диспетчере выбираем весь лист (1), выделяем лишнее правило (2) и удаляем его (3). Повторяем, пока не удалим всё лишнее.
Удаление лишних правил условного форматирования
И помните — никогда не используйте формат целиком для всего столбца или строки!
7. Удаляем лишние имена
Именованные диапазоны используют далеко не все, но обнаружить их в своем файле может каждый (например, они могли попасть туда при импорте или копировании данных). Весь список можно увидеть в диспетчере имен («Формулы» — «Диспетчер имен»). Там же можно и удалить все ненужные имена.
Диспетчер имен
Иногда в книге могут оказаться скрытые имена. Для их удаления придется воспользоваться небольшим макросом.
- Sub УдалениеСкрытыхИмен()
- For Each Nm In ActiveWorkbook.Names
- If Nm.Visible = 0 Then
- Nm.Delete
- End If
- Next Nm
- End Sub
Заключение
Предложенные выше способы помогают решить подавляющее большинство «решаемых» проблем с быстродействием и размером книги.
Однако, помните — если ваш рабочий файл содержит множество сводных таблиц, сложных формул, связи с другими документами, диаграммы и условные форматы — то вполне может быть, что и после всех проделанных операций он будет работать медленно и весить много. Это естественно, так как вычислительные способности компьютеров и самого Excel не безграничны.
В таких случаях стоит задуматься о том, чтобы оптимизировать саму логику работы файла, подумать над перестраиванием всей модели вычислений. Если такая необходимость возникла, но самостоятельно решение придумать не удалось — можете обращаться к нам.
Ваши вопросы по статье можете задавать через нашего бота обратной связи в Telegram:
@ExEvFeedbackBot
Источник: https://zen.yandex.ru/media/id/59affb7afd96b11e8eadd771/59b911eca8673183c5047d3f