@vikibtc
You wrote: :because of this bug , I apply the formatting on my notebook and open the files on my desktop»
… which introduces a whole new factor here. Just to be clear, are you applying conditional formatting on the notebook, doing so successfully, and then opening files that display that conditional formatting successfully on a desktop?
Is this, then, implying—it’s certainly what I’m inferring—that it’s on the desktop that you’re experiencing the difficulty, the freezing, if you attempt to apply conditional formatting directly on that system?
What’s different about the two computers (aside from one being a laptop, the other a desktop)? Are both Macs, or both Windows, or a mix of operating systems? Is the Excel installed on each the same? Memory available? How large is the file? Have you experienced any other anomalies between the two computers or is this the only thing where one of them crashes?
Группа: Проверенные Ранг: Участник Сообщений: 83
Замечаний: |
Доброго времени суток.
Есть ли способ «заморозить» условное форматирование?
Проблема в том что имеются две большие таблицы, форматирование первой зависит от данных во второй. После задания условного форматирования начинает сильно тормозить. На сколько я понимаю, происходит постоянный просчет формулы в условном форматировании, из-за чего и тормозит.
Это можно как-то решить средствами екселя?
З.Ы. Файл не прикрепляю ибо большой очень, не поместится.
Вам прислали файл Excel большого размера? Он сильно тормозит и долго сохраняется? После каждого действия необходимо ждать. При этом, в файле не так много информации. Почему тормозит Excel, причины и следствия, а главное: как с этим бороться? Сейчас разберемся.
Тормоза программ пакета MS Office дело распространенное. Excel тормозит из-за целого ряда причин: неправильное использование функций программы (лишнее условное форматирование, сводные таблицы основанные на огромных массивах, лишние строки в документах). Excel тоже не идеален и тормоза происходят из-за не совершенства программной части (появляющиеся объекты, папка printerSettings в структуре). Поэтому рекомендуем вам пройтись по всем 10 шагам ниже и не останавливаться на одном.
Содержание
- 1. Тормозит Excel? Нужно убрать форматирование в виде таблиц
- 2. Убрать излишнее условное форматирование (если Excel тормозит при прокрутке)
- 3. Удалить лишние строки/столбцы (если ползунок прокрутки очень маленький)
- 4. Удалить лишние объекты
- 5. Удалить лишние данные в структуре файла Excel
- 6. Тормозит Excel — правильно настройте сводные таблицы
- 7. Измените формат файла на .xlsb
- 8. Установлен неопознанный принтер
- 9. Удалите файл PERSONAL
- 10. Замените много созданных формул макросами
- 11. Уменьшите размер рисунков
- 12. Перейдите на поздний Excel — 2013 или 2016
- Похожие статьи
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 — читайте в статье.
Если ничего не помогает пишите комментарии, постараемся помочь.
Dmitri Пользователь Сообщений: 9 |
Добрый день, Спасибо заранее всем кто откликнется! Прикрепленные файлы
|
vikttur Пользователь Сообщений: 47199 |
#2 15.10.2017 18:03:23 Зачем условное форматирование, если применяете VBA?
Изменено: vikttur — 15.10.2017 18:12:39 |
||
Dmitri Пользователь Сообщений: 9 |
А как надо было по правильному? |
Мотя Пользователь Сообщений: 3218 |
Поскольку не для себя «стараетесь» — для юзера — Ваш алгоритм очень не рационален. |
Dmitri Пользователь Сообщений: 9 |
В рабочей таблице много различных условий форматирования и много листов. В основном форматирование применяется по значению ячейки и только к этой ячейке. В случае значения «отменено» и еще пары других, надо залить цветом не одну ячейку а строку, казалось бы, условное форматирование по формуле как раз для этого и сделано и ничего сложного, но выходит надо, возможно, вводить отдельное «протоколирование» , вообщем пока не понятно как поступить. |
Мотя Пользователь Сообщений: 3218 |
Нормальному, работающему юзеру нет никакого дела до «красот» интерфейса: он «ценит» только простоту действий для достижения своих целей! |
Dmitri Пользователь Сообщений: 9 |
Нормальному работающему юзеру необходимо выделение цветом статуса заказа товара, чтоб не допустить ошибок, а не для красоты. В вопросе стоит задача как создать решение, необходимое для работы, а мы уходим в обсуждение какому юзеру, что надо по вашим предположениям. Условия форматирования вводились в таблицу постепенно, пока первый год работали с заказами, и каждое форматирование — необходимость для работы персонала. Это рабочий процесс. Так как размножение строк приводит к бесконтрольному и неверному копированию условных форматирований, и был придуман макрос переписывающий условные форматирования. Мы обсуждаем здесь часть кода, которая выполняется медленно, и вопрос как это правильно реализовать, и если это не vba средствами то как, чтоб снизить ручное редактирование? |
vikttur Пользователь Сообщений: 47199 |
Подход менять надо. Вам об этом и пишут. |
Dmitri Пользователь Сообщений: 9 |
Спасибо за информативные ответ, но как тогда надо решить вопрос с таким же результатом по правильному? Иными словами, я прошу помощи в поиске правильного решения, а мне только указывают, что мой метод неверный, я критику то принимаю, но что является альтернативным решением? |
vikttur Пользователь Сообщений: 47199 |
Потому что в этой теме обсуждается Ваш вопрос, а не Ваша задача. |
Мотя Пользователь Сообщений: 3218 |
#11 15.10.2017 19:26:36
Для начала: не красьте все столбы от «B» до «DR»! |
||
Dmitri Пользователь Сообщений: 9 |
В данном случае окраска всей строки есть цель. Сделано чтоб в конце таблицы было наглядно видно, что эта строка особенная. Я понял, что лучше отказаться от условного форматирования и следует применить цвет к строке средствами vba, но тогда надо продумать как это будет применяться к строке если статус динамически меняется. То есть, в один день у строки статус «отменен» и окрашено, а в другой день, например, уже «не отменен» и цвет уже должен отсутствовать. |
Мотя Пользователь Сообщений: 3218 |
#13 15.10.2017 19:47:18
Удобный вариант — отдельный «протокол»: сброс цвета на листе и новое заполнение, в соответствии с текущим днем. |
||
RAN Пользователь Сообщений: 7091 |
#14 15.10.2017 19:47:25
|
||
Dmitri Пользователь Сообщений: 9 |
Спасибо каждому! Все идеи и рекомендации имеют смысл. |
Dmitri Пользователь Сообщений: 9 |
Файл в приложении Прикрепленные файлы
Изменено: Dmitri — 15.10.2017 20:18:39 |
_Igor_61 Пользователь Сообщений: 3007 |
#17 15.10.2017 20:31:35
Это значит столбец всегда «Е» а строка может меняться, если попадает под условие — срабатывает то, что Вы ей назначили. Абсолютные и относительные ссылки — наберите в поисковике |
||
Dmitri Пользователь Сообщений: 9 |
#18 15.10.2017 20:44:00 Это я знаю, но когда формулы размножаешь на листе, то формулы получаются типа $E11 для строки 11, и $E2025 для строки 2025. В соответствии с этим я и формировал формулы для условного форматирования — для каждой строки своя формула, а здесь применение идет верно — строка к строке, но в любой строке, в окне условного форматирования, одна и та же формула $E11=…. » это ввело в заблуждение |
Хитрости »
18 Декабрь 2015 34175 просмотров
Файл долго фильтрует строки/тормозит при фильтрации
Довольно часто у пользователей после продолжительной работы в файле возникает проблема: при изменении условия фильтрации(Данные(Data) —Фильтр(Filter)) файл задумывается на минуту, а порой и не на одну. В этой статье я решил рассмотреть несколько причин подобного поведения файла и как их устранить. При этом описанные методы так же справедливы и для случаев, когда файл тормозит не только при фильтрации, но и при других изменениях на листе:
- Большое количество формул и функций на листах
Самая частая причина — наличие большого количества формул на листе. Это могут быть и ВПР(VLOOKUP) с большим диапазоном данных и СУММПРОИЗВ(SUMPRODUCT), и любые другие в разных сочетаниях. Так же значительно тормозить файл могут формулы массива, даже если они не сложные. Добавить тормозов в этом случае могут еще и так называемые «летучие» функции, среди которых чаще других в файлах используются: ДВССЫЛ(INDIRECT), СМЕЩ(OFFSET), ЯЧЕЙКА(CELL). Почему летучие и чем они плохи? Обычно функции пересчитываются только в том случае, если изменена сама функция или любой аргумент этой функции(иными словами только если изменены ячейки, которые влияют на результат функции). Летучие же функции пересчитываются при любом изменении в книге(в том числе сортировка и фильтрация), независимо от того, повлияет ли это на расчет самой функции.
Поэтому если файл напичкан формулами и тормозит, то первое, что надо сделать это найти те формулы, расчеты которых больше не нужны и преобразовать их в значения: Как удалить в ячейке формулу, оставив значения?. Оптимальный вариант: сделать копию файла, заменить все формулы значениями и просматривать данные в нем. Так же можно заменить ту часть формул, расчеты которых не нужны для выполнения текущей задачи.
Если этот вариант не подходит, то необходимо убедиться, а нет ли летучих функций? Это можно сделать элементарно при помощи поиска: Ctrl+F, найти(find what) -Имя функции, кнопка Параметры(Options>>) -снять галку с Ячейка целиком(Match case). В этом случае надо попробовать оптимизировать расчеты, отказавшись от таких функций. Как правило в большинстве случаев их можно заменить другими функциями, но это потребует знания самих функций.
Так же следует помнить, что функции и формулы могут быть не просто на листе, а так же содержаться в именованных диапазонах: Именованные диапазоны. Как пример таких формул: Динамические именованные диапазоны. Поэтому так же следует проверить наличие именованных диапазонов и удалить все неиспользуемые. С осторожностью удаляйте такие имена — как правило, если плохо в этом ориентируетесь удалять их можно только на копиях файлов и только после того, как все формулы в книге замените значениями
- Наличие условного форматирования на листе
Если в листе есть много условий условного форматирования, это вполне может приводить к медленной работе файла не только при изменения условий фильтрации, но и вообще при любом действии на листе — изменение данных в ячейках, сортировка, пересчет формул и т.д. Происходит это потому, что условное форматирование накладывает формат поверх реального и определяется на основании условий, которые могут определяться расположением и видимостью строк на листе. Поэтому следует убедиться в наличии/отсутствии условного форматирования и понять — а так ли оно нужно в этом файле? Если не знаете где искать условное форматирование: Основные понятия условного форматирования и как его создать - Разбиение на печатные страницы
Очень сильно может замедлить работу файла разбиение листа на печатные страницы, особенно если рабочий диапазон(UsedRange) листа довольно большой. Почему этот режим тормозит? Потому что при каждом изменении на листе Excel будет просматривать каждую строку и столбец и обращаясь при этом к настройкам печати(принтера), перерисовывая границы печати на листе.
Кто установил эти границы, если я сам этого не делал? По умолчанию после вывода листа на печать, независимо от настроек книги или принтера, Excel отображает линии разбиения листа Excel на печатные листы и не убирает их.
Убрать печатные страницы можно через параметры:
Excel 2003:
Сервис —Параметры -вкладка Вид —Авторазбиение на страницы
Excel 2007:
Кнопка Офис —Параметры Excel(Excel options) -вкладка Дополнительно(Advanced) —Показывать разбиение на страницы(Show page breaks)
Excel 2010-2013:
Файл —Параметры(Options) -вкладка Дополнительно(Advanced) —Показывать разбиение на страницы(Show page breaks) - Структура/Группировка данных
Как ни странно, но на фильтр очень сильно влияет наличие структуры/группировки на листе. Устанавливается группировка через вкладку Данные(Data) —Группировать(Group) или Данные(Data) —Промежуточные итоги(Subtotal).
При этом тормоза в файле могу проявиться не сразу, а после добавления определенного количества строк или столбцов.
Делается группировка обычно для возможности компактно расположить на листе данные, относящиеся к определенной группе или категории. И это действительно удобно, но не стоит увлекаться. Если файл стал тормозить — попробуйте создать его копию и удалить всю структуру и группировки: Данные(Data) —Разгруппировать(Ungroup) —Удалить структуру(Clear Outline). Если это поможет — стоит задуматься: а так ли нужна была структура?
-
И отдельно буду публиковать подборку советов из комментариев к статье:
- перенос текста на строки тоже может быть причиной тормозов. Поэтому лучше его не выставлять там, где он не нужен(например, для ячеек с текстом, который помещается в ячейке и так). Где искать: вкладка Главная —Переносить текст или правая кнопка мыши —Формат ячеек -вкладка Выравнивание —Переносить текст.
- фильтр тормозит внутри «умной таблицы»(Вставка(Insert) —Таблица(Table)). Если тормоза проявляются внутри умных таблиц, или при работе с ними, или в формулах, ссылающихся на них — то имеет смысл проверить работу файла без этих таблиц. Для этого необходимо все умные таблицы преобразовать в обычные: правая кнопка мыши по любой ячейке умной таблицы —Таблица(Table) —Преобразовать в диапазон(Convert to Range).
Рекомендую проделывать это все на копии файла, т.к. восстанавливать некоторые возможности умных таблиц после из удаления может быть не так просто
Ну и конечно, все эти варианты могут сойтись в одном файле. В таком случае в файле достаточно будет меньшее количество каждого компонента для получения коктейля «Глубинный тормоз»
Так же советую ознакомиться со статьей: Как уменьшить размер файла. Она тоже может помочь с устранением тормозов.
Так же см.:
Excel тормозит/зависает при копировании ячейки/диапазона
Как уменьшить размер файла
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика