В этой статье расскажу, как я решил проблему с Excel у себя на работе раз и навсегда. А теперь постоянно делюсь этим решением с коллегами, а они в свою очередь подтверждают эффективность данных действий. Изначально проблема заключалась в том, что сотрудники каждый день по несколько раз жаловались на то, что Excel зависает при работе: долго открывает файлы, сохраняет, долго пересчитывает формулы и обновляет ячейки, а также наглухо зависает при перемещении по ячейкам, даже при простом клике, окно белеет и вылезает надпись «Программа не отвечает». Зависания Excel от 1 минуты до 30 минут были частой проблемой и головной проблемой для сисадминов, когда я только перешёл на новую работу, поэтому сразу решил заняться этой проблемой. Делалось это для того, чтобы
- снять нагрузку с IT-отдела
- наконец-то чтобы пользователи остались довольными.
- повысить свою квалификацию в решении вопросов пользователей
- выслужиться перед работодателем, куда ж без этого 🙂
- написать данную статью и поделиться с вами, а благодаря вашим коментариям «Спасибо!» я получаю искреннее удовольствие.
Поэтому, если вам поможет моё решение, отпишитесь в комментариях. Итак, я приведу несколько советов в порядке важности, использую которые вы раз и навсегда решите проблема с зависаниями Excel. Если у вас тоже Excel тормозит и зависает при работе с таблицами, воспользуйтесь моими советами в этой статье
Причин на самом деле много, здесь я перечислю пункты по решению основных проблем по мере своей эффективности по убыванию. Бывают и очень узкие проблемы, но во-первых, эти случаи единичны, а во-вторых, они требуют тщательного изучения и исследования. Поэтому ловите 7 способов решения проблемы с Excel, если он тормозит и зависает.
1. Отключить аппаратное ускорение прорисовки (бесплатно)
Пожалуй, это один из самых простых и бесплатных способов ускорить работу Excel, но про который знает не так уж и много айтишников, не говоря уже про простых пользователей. Итак, если у вас Excel зависает и тормозит, сделайте так:
- Откройте меню Файл
- Выберете подпункт Параметры
- Дополнительно
- Внизу найдите раздел Отображение (в старых версиях Экран)
- Найдите пункт «Отключить аппаратное ускорение обработки изображения»
- Поставьте на нём галочку
- Перезапустите программу Excel и заодно окна Microsoft Office
- Готово!
После этого у вас Excel будет работать быстрее и меньше тормозить. Особенно это даёт результат на компьютерах и ноутбуках со встроенной видеокартой, потому что аппаратное ускорение на таких видеокартах более чем сомнительно. Особенно меньше будет подвисать в моменты, когда в большом файле пересчитываются формулы по каждому «чиху» (перемещение по ячейкам, попытки копировать, вызвать контекстное меню, вставить, редактировать) или перерисовываются ячейки при изменении размеров окна.
2. Перейти на SSD (надо купить SSD)
Это универсальный способ для того, чтобы заставить операционную систему и программы быстрее открываться, работать, меньше тормозить. Если до этого Excel и Word у вас открывались за 5-20 секунд, то после перехода на твердотельные накопители это будет происходить за 1-2 секунды. Также Windows будет грузиться не 2-10 минут, а 10-15 секунд. Согласитесь, это очень большой прирост производительности. Вкупе с предыдущим пунктом — это самые действенные способы. Все нижеследующие способы менее эффективные, но тоже позволяют избавиться от тормозов Excel.
Более подробно про SSD я написал в своей статье Срочно переходите на SSD. Плюсы и минусы твердотельных накопителей, сравнение с простыми жёсткими дисками
3. Почистить папку TEMP, Temporary (бесплатно)
Временные файлы — это на самом деле большая проблема на компьютерах, где Windows установлен довольно давно и ни разу эта папка не чистилась. Папка временных файлов у каждого пользователя своя, её легко открыть введя в адресной строке %TEMP% и нажав Enter. Если в этой папке свыше 500-1000 файлов и огромное количество папок с перешифрованными названиями, а также весь список файлов и папок грузится очень долго, значит этот пункт вам очень сильно поможет. Дело в том, что все программы и службы в своей работе используют папку с временными файлами как некоторый отстойник, куда можно ненадолго распаковать файлы, закинуть копии, автосохоранять различные ситуации, закачивать обновления, скрипты. Но не все эти файлы также благополучно удаляются, как создаются. Естественно с течением времени она так набухает, что все программы, использующие эту папку начинают подтормаживать. Excel не исключение, он пытается туда сохранять промежуточные версии документов, пока вы не нажмёте Сохранить, и прочие данные. Соответственно как долго у вас эта папка открывается, также долго Excel может пытаться открыть или восстановить некоторые файлы.
Для решения этой проблемы надо почистить папку со временными файлами. Сделать это можно как вручную, выделив и нажать Delete. Но надо быть аккуратным, не удалить файлы, которые сейчас используются. Но я использую программу Ccleaner. Есть и другие аналоги, однако Ccleaner меня более чем устраивает, главное — не обращать внимание на рекламу и предложения перейти на полную PRO-версию. Скачать последнюю версию можно здесь https://www.ccleaner.com/ru-ru/ccleaner/builds. Выбирайте сокращенную версию, если она там имеется. Одно замечание — можете убирать галочку с «Файлы Cookie» в каждом браузере при стандартной очистке, чтобы у вас не слетала авторизация и не приходилось заново заходить в личные кабинеты и почту. Далее жмёте «Анализ», затем «Очистка». Если у вас удалилось больше 2 Гб, значит у вас очень захламлённый компьютер, данный пункт вам подошёл. Удаляйте временные файлы раз в месяц, полгода. Каждый день и неделю не надо, это уже перебор.
4. Почистить папку %appdata%/Microsoft/Excel от временных файлов (бесплатно)
Кроме папки TEMP, Excel также сохраняет временные копии в %appdata% (которая roaming)/Microsoft/Excel. Также как и в предыдущем пункте, здесь может много файлов лишь с одним отличием — все они принадлежат Excel, ничего лишнего не удалите. Но если вдруг в будущем вам потребуется восстановить какой-то файл, то у вас это не получится. Поэтому опять-таки будьте аккуратны, удаляйте вручную, здесь Ccleaner не поможет.
5. Удалите лишние стили (форматирование), которые наслаиваются при копировании из разных файлов (долго, бесплатно)
Этот способ поможет, если у вас Excel зависает при работе именно с одной конкретной таблицей. Бывает такое, что файл могут редактировать множество пользователей и каждый из них добавляет в файл что-то своё, применяет свои стили. Или, например, когда вы в один файл копируете таблицы и их куски с кучи разных файлов, собираете всё в одном файлике и он начинает тормозить. Особенно это заметно, когда применяется условное форматирование (кто пользуется Excel, тот знает), чересстрочные выделения и прочие стили заголовков, строк и столбцов. Из-за этого «компота», как говорил Медведев, Excel и тормозит. Поэтому если вам все эти форматирования неважны, а важнгы именно данные, то надо из удалить. Выделить диапазон ячеек или весь лист и в меню выбрать «Очистить форматирование». Иногда это не срабатывает ,потому что остаются ссылки и зависимости, а также невидимые объекты. На моей памяти одна сотрудница запихивала в маленькие ячейки 1 на 1 см фотографии по 5Мбайт и искренне удивлялась, почему этот файл долго открывается, обрабатывается и сохраняется.
Если вы сделали всё из предыдущих пунктов и очистили форматирование, но ничего не помогло, то вам надо скопировать все данные таблицы в новый файл и работать далее с новым файлов.
6. Купите лицензию MS Office или последнюю версию офисного пакета (дорого, проблема может быть не в этом)
Вы не поверите, но бывает, что Excel зависает, если у вас пиратская версия, поэтому однозначно купите лицензию. Хоть Майкрософт Офис стоит дорого, но он стоит каждой копейки, ведь благодаря ему вы можете зарабатывать. А лицензионная версия часто работает без сбоев из-за ошибок активации, а также ошибок, связанных с патчами, кряками и активаторами. Просто купите, для дома версия стоит недорого.
И в том случае, если вы ещё пользуетесь версиями Microsoft Office 2007 или даже 2003, то пришла пора поставить новую версию. Некоторые функции в старых версиях отсутствует, также потихоньку сокращается совместимость файлов. Так, например, файлы, запароленные в свежей версии Excel, допустим 2016 или 2019, могут просто не открыться в версии 2007. Я уж молчу, что в 2003 изначально не было поддержки файлов xlsx и docx, над оставить патч, а в 2007 нет поддержки файлов формата odf и ods, также нет экспорта в PDF напрямую, возможности работы с pdf и многих других функций.
7. Отключите лишние надстройки
Чуть не забыл про этот пункт. Так как Excel очень мощная программа, то другие программы интегрируются в неё с помощью разных надстроек. Есть надстройки OneDrive, КонсультантПлюс, Foxit, антивирусов, конвертеров файлов и прочие. Пользуетесь вы ими редко, либо не пользуетесь совсем, а из-за них Excel зависает частенько. Поэтому лишние надстройки надо удалять. Делается это так:
- Файл
- Параметры
- Надстройки
- в пункте Активные надстройки приложений выбрать ненужные и отключить
- Перезапустить Excel.
В принципе всё. Пользуйтесь на здоровье, работайте с Excel без тормозов, лагов и зависаний, редактируйте таблицы и не испытывайте неудобств. Если статья помогла и оказалась полезна, буду благодарен за комментарии и замечания или дополнения!
Отблагдарить автора статьи также можно переводом, +100 вам в карму!
Есть файл(в приложении), работал «без приключений», после чего был добавлен один лист с расчётами(не сильно много расчётов), файл открывался несколько дней нормально, после чего резко перестал работать нормально. Удаление всего, что было добавлено не помогает, файл всё так же дико тормозит. Читал форум, была похожая проблема: объяснялось огромным количеством подключений к БД акцееса, пробовал удалить все макросы(которые осуществляют подключение) — не помогает. Даже теоритически не могу себе представить что может быть. Пытался даже после сохранения нового варианта файла — перезагружать ПК, что бы выгрузить все данные(на всякий случай) из оперативки. Файл примера — добавлен был самый левый лист, результаты расчётов которого использовались на 2-м листе в самом низу (арматура) |
|
Ещё раз попробовал удалить 1-й лист и поля с результатами вычислений — с третьего раза это помогло, но я не могу понять почему столь незначительный лист так сильно перегружает компьютер. Другие отчёты, которые я делал — используют в несколько раз большее количество информации и расчётов по ней, но при этом не грузят ПК, а тут… P.S. Дополняю: не помогло, показалось только. Всё так же тормозит всё Изменено: Александр Меркулов — 27.10.2016 12:06:26 |
|
vikttur Пользователь Сообщений: 47199 |
Грузят, видимо, не расчеты, а большое количество форматов или вычислений (вообще, в книге). Достигли критической точки. |
kuklp Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
У Вас в листе DataBase заполнены ВСЕ строки. Не говоря уж о том, что в диапазоне с данными гора тяжелых формул. И всякий раз они пересчитываются. Я сам — дурнее всякого примера! … |
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
Лист «DataBase» столбец AD заполнен до самого низа. <#0> |
По поводу того, что тяжелые формулы — всё мелочи. Уверен, что не из-за этого, потому как этот файл копируется, меняется имя и продолжает заполняться каждый день. И ни когда не тормозило, я не говорю про 5-и секундные задержки при обновлении, это нормально для столь «тяжёлого» файла. Касаемо столбца AD — там проставлена элементарная формула, которая никогда не грузила этот файл и она присутствует очень давно там, в ней дело быть не может. P.S. Заметил интересную закономерность: удалил всё, что было добавлено(как и писал выше) — т.е. лист один целиком, а на втором места с результатами расчётов. После чего сохранил — запускаю, всё отлично работает и довольно-таки шустро, НО при первом переходе на лист «Report_Products_Week» — сразу же всё зависает, как будто он пытается запомнить всё, что там есть в оперативке, после определённого времени — всё работает хорошо, сколько угодно можно переходить и нажимать на любую ячейку на любом листе, но как только на этом же злополучном листе «Report_Products_Week» пытаешься либо прокрутить таблицу ниже(просто посмотреть что внизу) — начинается старая песня и опять всё подвисает до какого-то момента, потом вновь всё становится солнечно и красиво, тоже самое происходит при раскрытии сгруппированных строчек. Вобщем это ТОЛЬКО на этом листе и ТОЛЬКО при визуальном смещении ячеек на экране. Изменено: Александр Меркулов — 27.10.2016 12:32:59 |
|
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
#7 27.10.2016 12:44:18
А может следует обратить внимание на
|
||||||
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
#8 27.10.2016 12:45:03
На 2010 (х64) экселе виснет наглухо на нём. На портабельном 2007 всё в порядке — нигде не виснет. <#0> |
||
vikttur Пользователь Сообщений: 47199 |
#9 27.10.2016 12:46:26
Дело не в формуле. У Вас в этом случае задействованы и форматированы все строки. |
||
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
Сохранил в 2007 экселе в формате xlsb — проблемный лист перестал быть проблемным при работе в 2010. И файл стал меньше весить. Ссылка . <#0> |
Александр Меркулов Пользователь Сообщений: 45 |
#11 27.10.2016 14:12:37
Может быть и стоит обратить внимание. Обратил, но ничего ровным счётом это не меняет, абсолютно. Удалил даже ВСЕ пустые строки из БД — НИЧЕГО не поменялось, как всё тормозило, так и тормозит. И в данном случае логический вывод, который я делал до этого: «это было раньше и с этим работало всё хорошо — значит дело не в этом» имеет силу. Я без сомнения благодарен ВСЕМ советам, которые дают люди и каждый из них проверяю, даже если он кажется мне абсурдным, но пока что ни один из них — не помог. И я всё чаще поглядываю на бубен в шкафу. P.S. На тяжесть формул тоже не стоит грешить, на это указывают следующие факты: Изменено: Александр Меркулов — 27.10.2016 14:18:08 |
||
Александр Меркулов Пользователь Сообщений: 45 |
#12 27.10.2016 14:20:54
Попытался открыть этот файл — лаги без сомнения меньше, но ключевая фраза: «без поддержки макросов», которые, к сожалению нужны в этой книге. Изменено: Александр Меркулов — 27.10.2016 14:57:44 |
||
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
#13 27.10.2016 14:25:35
Где Вы эту фразу у меня увидели?
В том файле, что скинул, у меня этой проблемы нет. <#0> |
||||
Александр Меркулов Пользователь Сообщений: 45 |
#14 27.10.2016 14:31:00
Без сомнения пока что Ваш вариант решения проблемы самый лучший, какие-то зедержки присутствуют, которых в этом месте раньше не было(что указывает на наличие всё той же проблемы), но значительность этой проблемы сводится к минимуму. |
||
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
#15 27.10.2016 14:33:38
Да ну? А по моим расчётам 99,93% — нажмите сочетание клавиш Ctrl+End — будет активирована ячейка последней заполненной строки. В Вашем случае это 1 047 886. И это 12%? )) И весь этот миллион строк с формулами. |
||
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
#16 27.10.2016 14:35:12
Кто Вам такое сказал? ) |
||
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
#17 27.10.2016 14:36:35
Голословное утверждение. <#0> |
||
Александр Меркулов Пользователь Сообщений: 45 |
#18 27.10.2016 14:43:33
Повторюсь ещё раз: я пробовал удалить ВСЕ, что ниже 12776 строки — последняя строка, несущая смысловую нагрузку. — это не дало ни какого результата |
||
Александр Меркулов Пользователь Сообщений: 45 |
#19 27.10.2016 14:46:19
хорошо, приму во внимание, что может быть я был слишком самоуверен и вероятно неправ, сказав, что этот формат «криво» работает с макросами, но я больше практик — я попробовал действие самый необходимых кнопок с макросами и они не работают в данном файле, в той версии, которая висит — макросы работают без каких-либо нареканий. |
||||
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
Александр Меркулов, я ведь не утверждаю, что именно из-за этого, но это могло стать одной из причин, переполнивших «чашу терпения» Excel )) |
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
А макросом протянуть формулы докуда надо не вариант? <#0> |
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
#22 27.10.2016 14:53:06
Тогда зачем формулы? Заносите макросом данные — это ЕЩЁ больше облегчит Ваш файл. |
||
Александр Меркулов Пользователь Сообщений: 45 |
#23 27.10.2016 14:53:53
Почему это играет для всех такую важную роль? Я понимаю, что это нужно не Вам, а мне и Вы не обязаны мне что-то доказывать, но я перед тем как спорить с пеной у рта — сделал как посоветовали, мне не помогло удаление строк с листа DataBase и соответственно решать проблему с тем, как сократить их количество в этом листе — не вижу смысла. P.S. У меня основная проблема — зависание на одном конкретном листе при одном конкретном действии, то, что данные с листа DataBase ни как не влияют на это, как мне казалось, я уже доказал. Если вы удалите данные, которые кажутся Вам лишними: а именно всё, что вычисляется в листе DataBase с пустыми значениями и это хоть как-нибудь поможет решить основную проблему — я принесу всем, кто об этом говорил самые искренние и глубокие извинения Изменено: Александр Меркулов — 27.10.2016 14:57:55 |
||
Юрий М Модератор Сообщений: 60577 Контакты см. в профиле |
#24 27.10.2016 14:55:39
Да потому, что это это может быть одним из факторов… |
||
Танцы с бубном помогли. Решение оказалось гениально простым(если вдруг кто-то следил за темой). |
|
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
Александр Меркулов, иногда файлы «портятся». Причин может быть много, одна из них — перегруз книги, т.к. эксель — это табличный процессор, а не база данных. Потому и советуют лишнее убрать. <#0> |
vikttur Пользователь Сообщений: 47199 |
#27 27.10.2016 15:49:16
Этим предложением Вы напрочь отбиваете охоту помогать Вам. |
||
Александр Меркулов Пользователь Сообщений: 45 |
#28 27.10.2016 16:01:56
При всём уважении: Как оказалось — не то, что я предполагал, ни то, что другие предполагали — не оказалось верным решением проблемы, решение было найдено совершенно случайно своими словами я подчеркнул то, что нет смысла всё перечитывать, так как решение я написал, и тем не менее было большое число желающих помочь и различных советов, я выразил благодарность всем за это, если кого-то оскорбило это или кто-то неправильно понял- приношу свои извинения, данный пост можно удалить, так как это ответ на Ваше «vikttur замечание. |
||
wowick Пользователь Сообщений: 972 |
#29 27.10.2016 16:46:00 Автор, в 3 и 9 сообщениях упоминалось фраза форматы ячеек. Да, там не было написано про «условное форматирование», но тем не менее это ваш файл и форматы ячеек тоже ваши. Если автоматизировать бардак, то получится автоматизированный бардак. |
Почему тормозит 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 для вызова редактора и вставьте код:
Долго открывается excel файл
windows xp sp3, со всеми обновлениями.
MS Office 2010, со всеми обновлениями.
Ознакомился с темой Word и Excel долго открывает документы из Проводника (+) (http://forum.ixbt.com/topic.cgi?id=23:40659)
Там немножко другая ситуация, хоть и похожая. Там проблема с wi-fi. У меня же проблема на компьютерах, подключенных в сетку через витую пару.
Офис и в нем 6 компьютеров. 3 открывают xls файлы на ура, а вторая половина — нет. Ждать приходится по минуты 2.
раньше все было ок. С год и более никаких проблем. Началось вчера. при двойном нажатии на xls файлах в Windows Explorer.
Спустя минуту, или две Excel запускается, но файл не загружает. Загрузку самого файла приходится ждать еще с минуту.
Если файл открывать из самого Exel, то никаких вопросов. Открытие происходит мгновенно.
открытие файлов тормозит, где бы они не лежали. хоть, на корню системного диска. хоть, на рабочем столе итд.
файлы маленькие.
Что делалось.
0. Переустановка офиса.
1. Сохранение реестра программой Erunt.
2. Удаление всех принтеров.
3. Отключение от сети.
4. Проверка системы программами avz (безопасный режим, в доп. свойствах проверки были включены все галочки. полный режим проверки).
5. Отправка отчетов по сканированию на virusinfo (avz&hjackthis) (проблем не обнаружено).
6. sfc /scannow.
7. Смена ассоциаций xls файлов под другое приложение и обратно.
8. HKLMSoftwareClasses.xls , параметр «(по умолчанию)» > «Excel.Sheet.8» (ok).
9. HKLMSoftwareClassesExcel.Sheet.8shellOpencommand > прописан полный путь к excel.exe.
10. Настройки: code][HKEY_CLASSES_ROOTExcel.Sheet.8shellOpenddeexec]@=»[open(«%1″)]»
[HKEY_CLASSES_ROOTExcel.Sheet.8shellOpenddeexectopic]@=»system»[/code]11. Флажок «*Игнорировать DDE-запросы от других приложений*» не стоит.
В чем фича таких тормозов?
а если в cmd выполнить
>start file.xlsx
тоже тормозит?
Посмотрите в autoruns (утилита от sysinternals) расширения оболочки (вкладка Explorer), попробуйте поотключать.
Ну или профилировать нужно. Вы же кажется уже знакомы с xperf.
Krey
а если в cmd выполнить
>start file.xlsx
тоже тормозит?
эдак, попросту открывается еще одно окно процесса cmd.exe.
Знать бы, что отключать в авторансе. (в отделе по explorer.exe).
Там море моментов для автодеска и hp, да и не только.
попробую еще раз все сохранить ерантом и порезать все, что не касаемо microsoft в том разделе (explorer).
Добавление от 08.02.2013 15:31:
Krey
Вырезал в разделе проводника (авторанс) все, что не касаемо вендора ms.
Не то.
Все один в один повторяется.
В другиз разделах посмотрю. Хотя, уже чесал все это и не раз.
Добавление от 08.02.2013 15:39:
Explorer, после запуска excel (вызов exel посредством даблклика по xls файлу) как бы виснет.
Выражается в недоступности рабочего стола в такой момент.
Панель задач (и меню пуск) остаются доступны.
EsTaF
эдак, попросту открывается еще одно окно процесса cmd.exe.
Ну может у вас имя файла с пробелами было, а вы забыли кавычки поставить? Должен эксель с файлом открываться.
Если файл не откроется, предлагаю дымить в эту сторону. ShellEx не работает.
Добавление от 08.02.2013 15:55:
EsTaF
Знать бы, что отключать в авторансе. (в отделе по explorer.exe).
сравните с эталонной машиной.
Добавление от 08.02.2013 16:00:
в авторанс удалил все, что не отеосится к нативным драйверам и вендору microsoft — не то.
Хотя, если запустить винду из safe mode, то все ок.
можно даже запустить винду в безопасном режиме, с поддержкой сети — то же все быстро открывается.
Добавление от 08.02.2013 16:01:
вирусов, как бы, нет.
EsTaF
Да. из cmd открывается файл мгновенно.
Значит ассоциации файлов и сам эксель не при чем. Проблема видимо в каком то расширении оболочки. А так как речь идет о минутах скорее всего это связано с сетью.
Можно поставить network monitor или аналог и глянуть что с сетью происходит в этот момент. Или искать то что прицепилось к эксплореру.
Добавление от 08.02.2013 16:04:
я там не зарегистрирован, не могу вложения посмотреть.
Добавление от 08.02.2013 16:05:
EsTaF
в авторанс удалил все, что не отеосится к нативным драйверам и вендору microsoft — не то.
а перезагружались после этого?
Добавление от 08.02.2013 16:07:
EsTaF
в авторанс удалил все, что не отеосится к нативным драйверам и вендору microsoft — не то.
А можете сохранить autoruns в файл и как то передать?
Krey
а перезагружались после этого?
А можете сохранить autoruns в файл и как то передать?
пассворд кидаю в pm
Добавление от 08.02.2013 16:19:
Сейчас из cmd файл перестал открываться.
Запускаю такую команду и вызов чего-то ждет.
Добавление от 08.02.2013 16:20:
Добавление от 08.02.2013 16:26:
Krey
Ну или профилировать нужно. Вы же кажется уже знакомы с xperf.
тут нигде ни у кого нет семерки.
хотя, можно зайти домой по vnc на OS X, а оттуда запустить parallels с posready.
Гимора, жесть, с этим m$.
А сколько у вас антивирусов на машине установлено?
Долго открывается excel файл
сколько весит этот файл?
какой офис? 2003? 2007? 2010?
как заполняются данные? копированием и последующим редактированием старых строк или просто заполняются новые?
бывает, что файл размером 50-80кБ расрастается до 4 МБ и начинает жуууутчайше подвешивать комп. сохранение файла так же подвешивает на несколько секунд (а иногда и минут) всю систему.
в этом случае, копирование в новую книгу не решает проблему.
решается просто, но не элементарно:
нажимаете ctrl+g, слева внизу кнопочка «Выделить», выбираем пункт «объекты», жмем ОК
если выскочит табличка что не найдено ни одного объекта — значит тут что-то другое виновато
если затупит на некоторое время, то надо ждать и никуда не нажимать, даже на другие окна не переключаться, т.к. это увеличит время ожидания в 2-3 раза.
В результате, на активном листе выделятся все невидимые объекты, которые надо тут же удалить простым нажатием кнопки «delete» (на клавиатуре)
после этого сохранить документ и проверить сколько стал весить файл. по хорошему, файл станет значительно меньше весить и перестанет тормозить. Эту операцию надо проделать на всех листах документа отдельно.
Если при нажатии сtrl+g, Выделить — пункт Объекты не активен, то нужно переключить Ексель в режим опытного пользователя.
Serge_007, поделился.
Hugo, так в том то и прикол, что иногда эти скрытые объекты тоже копируются. Поэтому не всегда это помогает.
vasiliy2241, у вас может быть очень много причин. поэтому несколько уточняющих вопросов:
1) сделали ли Вы то о чем писал Hugo в сообщении №2?
2) каким офисом пользуетесь? 2003? 2007?
3) где физически лежит файл? на чужом компьютере или сервере? тормозить может из-за медленного соединения между компами, или загруженности того компьютера, где лежит файл. попробуйте сохранить копию базы у себя на компе, и попробовать открыть/сохранить её. так чтобы на тот момент никто другой не был подключен к базе.
4) желательно ещё в этот момент посмотреть на графики в диспетчере задач (запускается ctrl+ shift + Esc), вкладки «Быстродействие и Сеть». Есть ли в момент открытия/сохранения базы скачки на этих графиках? например, график «Хронология загрузки ЦП» зашкаливает, или график потребления памяти начинает быстро расти?
5) посмотрите ветку, которую упоминал Serge_007 в Сообщении №4.
Вполне возможно, что достаточно будет только пункта 1)
Если нет, то ответьте нам на все эти вопросы, нам будет гораздо легче Вам помочь.
200?’200px’:»+(this.scrollHeight+5)+’px’);»>
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER Software Microsoft Office 11.0 Excel Security]
[HKEY_CURRENT_USER Software Microsoft Office 11.0 Excel Security FileValidation]
«EnableOnLoad» = DWORD: 00000000
Так же может помочь удаление двух пакетов обновления:
KB2502786 и kb2541025
200?’200px’:»+(this.scrollHeight+5)+’px’);»> Serge_007, поделился.
Hugo, так в том то и прикол, что иногда эти скрытые объекты тоже копируются. Поэтому не всегда это помогает.
vasiliy2241, у вас может быть очень много причин. поэтому несколько уточняющих вопросов:
1) сделали ли Вы то о чем писал Hugo в сообщении №2?
2) каким офисом пользуетесь? 2003? 2007?
3) где физически лежит файл? на чужом компьютере или сервере? тормозить может из-за медленного соединения между компами, или загруженности того компьютера, где лежит файл. попробуйте сохранить копию базы у себя на компе, и попробовать открыть/сохранить её. так чтобы на тот момент никто другой не был подключен к базе.
4) желательно ещё в этот момент посмотреть на графики в диспетчере задач (запускается ctrl+ shift + Esc), вкладки «Быстродействие и Сеть». Есть ли в момент открытия/сохранения базы скачки на этих графиках? например, график «Хронология загрузки ЦП» зашкаливает, или график потребления памяти начинает быстро расти?
5) посмотрите ветку, которую упоминал Serge_007 в Сообщении №4.
Вполне возможно, что достаточно будет только пункта 1)
Если нет, то ответьте нам на все эти вопросы, нам будет гораздо легче Вам помочь.
1) Да, не помогло.
2) 2007
3) переносил к себе на компьютер копию — результат тот же.
4) Оперативной памяти по процессу эксель расходуется от 14мб в статике, до 300 мб при попытке открыть/сохранить/закрыть книгу. По процессору тоже идут скачки резкие.
5) я не понял как найти и удалить папку revisions. Подскажите пожалуйста пошагово.
Excel долго открывает файлы
Долго открываются файлы Word и Excel c чужих компов
Всем привет. В теме, собственно, все написано. Если мне присылают (например, по электронной.
MS excel power point 2013 не открывает файлы
Здравствуйте. недавно установил ms office 2013, а именно : word,power point, excel(я только ими.
Excel не открывает файл
Доброго времени суток. Тема старая не решена по всей видимости. У меня таже проблема с файликом.
Office 2010 не открывает файлы с сетевого диска
Пробую открыть файлы(разные) — ничего не происходит. Копирую файл с сетевого диска на рабочий стол.
Excel 2007 открывает документ удалив все стили и цвета ячеек
Здравствуйте! Сегодня столкнулась с такой проблемой — открываю документ, с которым каждый день.
StudentBot, возможно, виновата какая-то надстройка. Любовью вшивать свои надстройки в ворд страдают такие (иногда говенные) программы, как ABBYY FineReader и Foxit Phantom. Не знаю, как с лицензией, но одна пиратка Foxit Phantom-а (вернее, ее надстройка), вызывает вышеописанные проблемы в MS Office.
Для проверки можно отключать по одной надстройке, перезапускать Excel и проверять, изменилось ли положение. Для этого заходим в меню — Параметры — Надстройки. Внизу диалогового окна есть поле Управление: Надстройки Excel, нажимаем кнопку перейти и отключаем нужную.
Excel не открывает файлы
таблица Excel. сохраняю как «книга Excel» без макросов и т.д. сохраняется с расширением Файл.
fopen открывает php файлы и не открывает sql файлы
Вот такая значит проблема . необходимо открыть по http некоторый файл test.sql fopen.
очень долго диск открывает.
вин 7. Хочу открыть диск Д-очень долго его открывает-подумал что то не то с диском. в некоторые.
Долго открывается или тормозит Excel? Ничего страшного
Избавляемся от тормозов в Excel
Наличие огромного количества форматирования существенно тормозит работу Excel
Представьте себе таблицу 65000 строк и 50 столбцов. У каждой ячейки отличаются цвета, уникальный шрифт и размер текста. Как думаете, будет по такому файлу курсор перемещаться шустро? Если у вас не MainFrame, то вряд ли.
Старайтесь оформлять только то, что нужно оформить. Не применяйте форматирование ко всему столбцу или строке, если можно выделить только необходимое количество ячеек. Ну а если попался такой «форматированный» файл, то в Excel есть замечательная кнопка — Очистить Форматы
Тормозить Excel может и из-за проблем с принтером
А точнее, если не подключен тот принтер, который в редакторе выбран по-умолчанию. Но эта проблема характерна для Экселя 2007 и старше. При этом запуск файла происходит очень медленно. Исправляется это выбором нового работающего принтера или включением не работающего. Или установкой по-умолчанию виртуального принтера «Microsoft XPS Document Writer»
Наличие скрытых объектов
Скрытые объекты могут попасть в таблицу в результате копирования данных из другого файла. Причем объект переносится с нулевыми размерами, из-за чего, при выделении его не видно. При большом их количестве, это может существенно затормозить работу.
Открываем проблемный файл и убеждаемся, что можем найти и выделить скрытые объекты. Для этого нажимаем Alt+F11, откроется редактор Microsoft Visual Basic. Нажимаем F4, в выпадающем списке выбираем ЭтаКнига Workbook и в поле DisplayDrawingObjects ставим значение -4104 -xlDisplayShapes. Далее, на Листе Экселя выполняем Главная — Найти и выделить — Выделение группы ячеек — Объекты, нажимаем ОК и потом клавишу Delete. Естественно, лучше сделать копию файла и потренироваться на нем.
Перегруженность формулами
Если документ большой, с несколькими листами и по некоторым из них проводится агрегация данных, то вычисление на слабых машинах, ноутбуках и нетбуках будет проходить медленно и долго. Если документ «свой» и его можно переделать, то желательно заменить неиспользуемые формулы — значениями. Делается это так. Выделяете необходимый диапазон ячеек, щелкаете правой кнопкой мыши и выбираете Копировать.
И так же на этот выделенный диапазон щелкаете ПКМ, выбираете Специальная вставка и указываете Значения. Таким образом, уменьшается количество формул, по которым Excel должен проводить расчеты.
Так же не забывайте использовать более быстрые формулы:
Используйте ЕСЛИОШИБКА, она отрабатывает быстрее комбинации ЕСЛИ + ЕОШ
Используйте — для конвертации логических значений в ноли и единицы.
Предпочтительней использовать комбинацию ИНДЕКС + ПОИСКПОЗ вместо ВПР
МАКС(А1;0) работает быстрее ЕСЛИ(А1>0;A1;0)
Долгое открытие из-за большого размера
Причем, часто бывает, что количество данных в таблицах, пропорционально не соответствует размеру файла. Последний, чаще всего больше. Такое может быть, когда файл побывал или находится в Общем доступе. При установке этого режима, Excel ведет журнал изменений, куда попадают все изменения за период, указанный в параметрах.
Отключить или поменять период, можно в Excel 2007 и старше, во вкладке Рецензирование — Доступ к книге. И на вкладке Подробнее выставляете значения какие нужно.
Если документ сохранен в формате xlsx или xls, то можно сохранить его в формат xlsb. И скорость, с какой будет открываться файл, приятно удивит. Увеличение скорости достигается за счет того, что все данные в этом файле сохраняются в бинарном формате, более «родном» для Excel, который требует меньше ресурсов для разбора и преобразования документа. Плюс ко всему этому, размер файла станет меньше.
Опять же, если документ сохранен в формате xlsx и долго открывается, можно открыть его с помощью любого архиватора (например winrar) и поудалять папки revisions и worksheets. Первая хранит все изменения, при включенном режиме Общий доступ. Вторая папка содержит изображения. Данные операции проводите на копии файла. Кстати, если в документе имеются изображения, не забывайте их сжимать. Делается это через вкладку Формат — группа Изменить — Сжатие рисунков и указать предпочтительное качество. Поможет уменьшить размеры изображений, что положительно отразится на размере файла.
Медленно запускаться файл может в Excel 2003 и 2007, если документ открывается с сетевого ресурса. Но при копировании на локальный компьютер — запуск происходит быстро. Лечится это созданием отсутствующих разделов и добавлением значения:
HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice12.0ExcelSecurityFileValidation (для 2007)
HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice11.0ExcelSecurityFileValidation (для 2003)
Enableonload=dword:00000000
Данный параметр отключает функцию Office File Validation, которая отвечает за проверку двоичного формата файла и проверяет, соответствуют ли он формату файла MS Office.
ВключаемОтклчючаем многопоточные вычисления
Данный параметр находится в Настройки — Дополнительно — вкладка Формулы. При наличии нескольких ядер процессора нужно включить данный пункт и указать количество потоков равное количеству ядер. Если же приложением тормозило и до этого с включенным параметром, то отключите. В идеале, эта настройка ускоряет работу при работе с формулами.
Надеюсь, после всех манипуляций, файл у вас больше не будет долго открываться, а Excel не будет тормозить при запуске.
И ниже, очень интересное и подробное видео с комментариями, как ускорить работу Excel
Сейчас поделюсь маленьким опытом в решении проблем когда зависает excel. Вчера столкнулся на работе с непонятным глюком на нескольких компах, очень долго и с большими тормозами начали открываться файлы excel и word (хотя в процессах excel не отжирал и 1% cpu, т.е. загрузка компа была нулевая). Сделав небольшой анализ работоспособности компа было понятно, что дело ни в антивирусе и ни как ни в самом excel. На втором компе была идентичная ситуация очень долго открываются файлы excel .
1 Вариант
Самый распространенный случай, когда по умолчанию стоит принтер который не работает или не подключен и он находится в “неоперативном режиме”. Для решения данной проблемы просто смените принтер по умолчанию на любой другой и проблема с зависанием Excel исчезнет!
2 Вариант
Бывает такое, что excel при работе с файлом начинает отжирать 15%-20% cpu, так быть не должно! Проверьте объем файла возможно он весит несколько десятков или сотен мегабайт, если это так, то он естественно будет у вас тормозить. В этой ситуации разберитесь почему так происходит, если у вас вставлены картинки, то уменьшите размер картинок перед тем как загружаете в файл Excel. т.е. надо оптимизировать файл.
3 Вариант (excel или word при открытии зависает)
При запуске текстового редактора Microsoft Word или Microsoft Excel Вы видите сообщение: «Проверка на наличие вирусов» Значит у вас при открытие файла Ваш антивирус проверяет его на наличии вирусов и т.д. и надстройка антивируса включена в Office. По мне так эта функция для параноиков и совершенно бесполезная. Но нервы она трепет сильно, поэтому ее мы сейчас научимся отключать.
1 Вариант:
Решение проблемы с зависанием Excel и надстройками можно решить кардинально 🙂 просто удалить антивирус (он не всегда корректен, но описать его стоит)
2 Вариант:
- Закройте приложение Word или Excel
- Найдите файл библиотеки надстроек Word (WLL) в папках автозагрузки. По умолчанию папки автозагрузки имеют следующие пути:
Microsoft Office 2003- C:Program FilesMicrosoft OfficeOffice11STARTUP
- C:Documents and SettingsYour_User_NameApplication DataMicrosoftWordSTARTUP
- Удалите WLL-файл и снова запустите приложение Word.
Microsoft Office 2007
- C:Program FilesMicrosoft OfficeOffice12STARTUP
- C:Documents and SettingsYour_User_NameApplication DataMicrosoftWordSTARTUP
- Удалите WLL-файл и снова запустите приложение Word.
Microsoft Office 2010
- Нажмите ФАЙЛ ->НАСТРОЙКИ ->НАДСТРОЙКИ -> тут смотрите и переходите к управлению Надстройками и отключаете все что относится к Антивирусу
4 Вариант (очень долго открывается, проблема только для Windows XP)
Данный вариант решения проблемы с зависает Excel подходит только для Windows XP, а решение заключается в правке команды при открытии файла из проводника.
Способ решения:
- Пуск ->Панель управления ->Свойства папки ->Типы файлов -> ищем в списке формат XLS -> далее нажимаем “Дополнительно” ->выбираем действие Открыть и нажимаем изменить
- В пункте Приложение, исполняющие действие заменить “C:Program FilesMicrosoft OfficeOffice14EXCEL.EXE” /dde на “C:Program FilesMicrosoft OfficeOffice14EXCEL.EXE” /e “%1”
- А в пункте Сообщения DDE вставить запись [rem see command line]
- Везде нажать ОК, перезагрузите комп и радуйтесь жизни!
5 Вариант (очень долго открываются документы Excel по сети)
Данный метод подойдет только тем, что работает с документами Office из сетевых папок.
Данная проблема характерна для компьютеров на которые было установлено обновление Microsoft Office Validation Add-In (KB2501584) Это обновление, призванное обезопасить содержимое документов, в итоге начало гонять открываемый файл по сети, создавая лишнюю нагрузку и неудобство. Тут есть два вариант решения проблемы 1) Просто удалим это обновление через Установку и удаление программ, либо через реестор.
Для Excel – HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice11.0ExcelSecurityFileValidation
Для Word – HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice11.0WordSecurityFileValidation
Для Power Point – HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice11.0PowerPointSecurityFileValidation
Нас интересует параметр EnableOnLoad , оно может принимать следующие значения:
- 0 = Don’t validate
- 1 = Validate
- 2 = Validate unless called via object model
В нашем случае Значение нужно ставить 0
6 Вариант
С этим случаем я сталкивался всего пару раз, но нервов мне попортил он изрядно. Ситуация такая, открываете фаил, а он просто тупит так, что невозможно даже работать, а сам файл ну максимум 2 страницы текста или табличка. В такой ситуации сразу смотрите на размер файла, если в нем 2-3 страницы а фаил весит пару мегов, то я думаю уже стоит напрячься и сделать вывод что, что -то не так. Почему такое происходит, да все очень просто, некоторые манагеры (которые не очень в ладах с компами) пользуются одним/несколькими файлами WORD и EXCEL т.е. сделают в нем свою работу распечатают, а потом все стирают и делают в нем другую работу и в этом случае теги(а они есть и в exel и в word и в html) разрастаются в геометрической прогрессии. И как Вы поняли нужно делать следующие, открываем другой файл exel/word (создать новый, чистый) и скопировать из старого файла в новый только нужную информацию.
Если Вы хотите поделиться и дополнить мою инструкцию, то присылайте в комментариях свои варианты. Будем увеличивать инструкцию!!!
завис excel, тормозит excel, файл excel зависает, тормозит файл excel, зависает excel 2013, зависает excel 2007, excel 2010 зависает, зависает excel при сохранении, тормозит excel 2007, зависает excel при открытии файла, тормозит excel 2013, тормозит excel 2010, почему тормозит excel, зависает excel при копировании, excel зависает при печати, тормозит excel при копировании, завис excel как сохранить файлы, excel зависает при открытии документа, при открытии excel тормозит, почему зависает excel, excel тормозит при открытии файла
В этой статье расскажу, как я решил проблему с Excel у себя на работе раз и навсегда. А теперь постоянно делюсь этим решением с коллегами, а они в свою очередь подтверждают эффективность данных действий. Изначально проблема заключалась в том, что сотрудники каждый день по несколько раз жаловались на то, что Excel зависает при работе: долго открывает файлы, сохраняет, долго пересчитывает формулы и обновляет ячейки, а также наглухо зависает при перемещении по ячейкам, даже при простом клике, окно белеет и вылезает надпись «Программа не отвечает». Зависания Excel от 1 минуты до 30 минут были частой проблемой и головной проблемой для сисадминов, когда я только перешёл на новую работу, поэтому сразу решил заняться этой проблемой. Делалось это для того, чтобы
- снять нагрузку с IT-отдела
- наконец-то чтобы пользователи остались довольными.
- повысить свою квалификацию в решении вопросов пользователей
- выслужиться перед работодателем, куда ж без этого
- написать данную статью и поделиться с вами, а благодаря вашим коментариям «Спасибо!» я получаю искреннее удовольствие.
Поэтому, если вам поможет моё решение, отпишитесь в комментариях. Итак, я приведу несколько советов в порядке важности, использую которые вы раз и навсегда решите проблема с зависаниями Excel. Если у вас тоже Excel тормозит и зависает при работе с таблицами, воспользуйтесь моими советами в этой статье
Так почему же Excel зависает?
Причин на самом деле много, здесь я перечислю пункты по решению основных проблем по мере своей эффективности по убыванию. Бывают и очень узкие проблемы, но во-первых, эти случаи единичны, а во-вторых, они требуют тщательного изучения и исследования. Поэтому ловите 7 способов решения проблемы с Excel, если он тормозит и зависает.
1. Отключить аппаратное ускорение прорисовки (бесплатно)
Пожалуй, это один из самых простых и бесплатных способов ускорить работу Excel, но про который знает не так уж и много айтишников, не говоря уже про простых пользователей. Итак, если у вас Excel зависает и тормозит, сделайте так:
- Откройте меню Файл
- Выберете подпункт Параметры
- Дополнительно
- Внизу найдите раздел Отображение (в старых версиях Экран)
- Найдите пункт «Отключить аппаратное ускорение обработки изображения»
- Поставьте на нём галочку
- Перезапустите программу Excel и заодно окна Microsoft Office
- Готово!
После этого у вас Excel будет работать быстрее и меньше тормозить. Особенно это даёт результат на компьютерах и ноутбуках со встроенной видеокартой, потому что аппаратное ускорение на таких видеокартах более чем сомнительно. Особенно меньше будет подвисать в моменты, когда в большом файле пересчитываются формулы по каждому «чиху» (перемещение по ячейкам, попытки копировать, вызвать контекстное меню, вставить, редактировать) или перерисовываются ячейки при изменении размеров окна.
2. Перейти на SSD (надо купить SSD)
Это универсальный способ для того, чтобы заставить операционную систему и программы быстрее открываться, работать, меньше тормозить. Если до этого Excel и Word у вас открывались за 5-20 секунд, то после перехода на твердотельные накопители это будет происходить за 1-2 секунды. Также Windows будет грузиться не 2-10 минут, а 10-15 секунд. Согласитесь, это очень большой прирост производительности. Вкупе с предыдущим пунктом — это самые действенные способы. Все нижеследующие способы менее эффективные, но тоже позволяют избавиться от тормозов Excel.
3. Почистить папку TEMP, Temporary (бесплатно)
Временные файлы — это на самом деле большая проблема на компьютерах, где Windows установлен довольно давно и ни разу эта папка не чистилась. Папка временных файлов у каждого пользователя своя, её легко открыть введя в адресной строке %TEMP% и нажав Enter. Если в этой папке свыше 500-1000 файлов и огромное количество папок с перешифрованными названиями, а также весь список файлов и папок грузится очень долго, значит этот пункт вам очень сильно поможет. Дело в том, что все программы и службы в своей работе используют папку с временными файлами как некоторый отстойник, куда можно ненадолго распаковать файлы, закинуть копии, автосохоранять различные ситуации, закачивать обновления, скрипты. Но не все эти файлы также благополучно удаляются, как создаются. Естественно с течением времени она так набухает, что все программы, использующие эту папку начинают подтормаживать. Excel не исключение, он пытается туда сохранять промежуточные версии документов, пока вы не нажмёте Сохранить, и прочие данные. Соответственно как долго у вас эта папка открывается, также долго Excel может пытаться открыть или восстановить некоторые файлы.
Для решения этой проблемы надо почистить папку со временными файлами. Сделать это можно как вручную, выделив и нажать Delete. Но надо быть аккуратным, не удалить файлы, которые сейчас используются. Но я использую программу Ccleaner. Есть и другие аналоги, однако Ccleaner меня более чем устраивает, главное — не обращать внимание на рекламу и предложения перейти на полную PRO-версию. Скачать последнюю версию можно здесь https://www.ccleaner.com/ru-ru/ccleaner/builds. Выбирайте сокращенную версию, если она там имеется. Одно замечание — можете убирать галочку с «Файлы Cookie» в каждом браузере при стандартной очистке, чтобы у вас не слетала авторизация и не приходилось заново заходить в личные кабинеты и почту. Далее жмёте «Анализ», затем «Очистка». Если у вас удалилось больше 2 Гб, значит у вас очень захламлённый компьютер, данный пункт вам подошёл. Удаляйте временные файлы раз в месяц, полгода. Каждый день и неделю не надо, это уже перебор.
4. Почистить папку %appdata%/Microsoft/Excel от временных файлов (бесплатно)
Кроме папки TEMP, Excel также сохраняет временные копии в %appdata% (которая roaming)/Microsoft/Excel. Также как и в предыдущем пункте, здесь может много файлов лишь с одним отличием — все они принадлежат Excel, ничего лишнего не удалите. Но если вдруг в будущем вам потребуется восстановить какой-то файл, то у вас это не получится. Поэтому опять-таки будьте аккуратны, удаляйте вручную, здесь Ccleaner не поможет.
5. Удалите лишние стили (форматирование), которые наслаиваются при копировании из разных файлов (долго, бесплатно)
Этот способ поможет, если у вас Excel зависает при работе именно с одной конкретной таблицей. Бывает такое, что файл могут редактировать множество пользователей и каждый из них добавляет в файл что-то своё, применяет свои стили. Или, например, когда вы в один файл копируете таблицы и их куски с кучи разных файлов, собираете всё в одном файлике и он начинает тормозить. Особенно это заметно, когда применяется условное форматирование (кто пользуется Excel, тот знает), чересстрочные выделения и прочие стили заголовков, строк и столбцов. Из-за этого «компота», как говорил Медведев, Excel и тормозит. Поэтому если вам все эти форматирования неважны, а важнгы именно данные, то надо из удалить. Выделить диапазон ячеек или весь лист и в меню выбрать «Очистить форматирование». Иногда это не срабатывает ,потому что остаются ссылки и зависимости, а также невидимые объекты. На моей памяти одна сотрудница запихивала в маленькие ячейки 1 на 1 см фотографии по 5Мбайт и искренне удивлялась, почему этот файл долго открывается, обрабатывается и сохраняется.
Если вы сделали всё из предыдущих пунктов и очистили форматирование, но ничего не помогло, то вам надо скопировать все данные таблицы в новый файл и работать далее с новым файлов.
6. Купите лицензию MS Office или последнюю версию офисного пакета (дорого, проблема может быть не в этом)
Вы не поверите, но бывает, что Excel зависает, если у вас пиратская версия, поэтому однозначно купите лицензию. Хоть Майкрософт Офис стоит дорого, но он стоит каждой копейки, ведь благодаря ему вы можете зарабатывать. А лицензионная версия часто работает без сбоев из-за ошибок активации, а также ошибок, связанных с патчами, кряками и активаторами. Просто купите, для дома версия стоит недорого.
И в том случае, если вы ещё пользуетесь версиями Microsoft Office 2007 или даже 2003, то пришла пора поставить новую версию. Некоторые функции в старых версиях отсутствует, также потихоньку сокращается совместимость файлов. Так, например, файлы, запароленные в свежей версии Excel, допустим 2016 или 2019, могут просто не открыться в версии 2007. Я уж молчу, что в 2003 изначально не было поддержки файлов xlsx и docx, над оставить патч, а в 2007 нет поддержки файлов формата odf и ods, также нет экспорта в PDF напрямую, возможности работы с pdf и многих других функций.
7. Отключите лишние надстройки
Чуть не забыл про этот пункт. Так как Excel очень мощная программа, то другие программы интегрируются в неё с помощью разных надстроек. Есть надстройки OneDrive, КонсультантПлюс, Foxit, антивирусов, конвертеров файлов и прочие. Пользуетесь вы ими редко, либо не пользуетесь совсем, а из-за них Excel зависает частенько. Поэтому лишние надстройки надо удалять. Делается это так:
- Файл
- Параметры
- Надстройки
- в пункте Активные надстройки приложений выбрать ненужные и отключить
- Перезапустить Excel.
В принципе всё. Пользуйтесь на здоровье, работайте с Excel без тормозов, лагов и зависаний, редактируйте таблицы и не испытывайте неудобств. Если статья помогла и оказалась полезна, буду благодарен за комментарии и замечания или дополнения!
Производительность Excel: советы по оптимизации производительности
Следуйте этим советам по оптимизации многих часто происходящих препятствий производительности в Excel.
Оптимизация ссылок и ссылок
Узнайте, как повысить производительность, связанную с типами ссылок и ссылок.
Не используйте ссылки вперед и обратные ссылки
Чтобы повысить ясность и избежать ошибок, разработать формулы, чтобы они не перенаносились вперед (справа или ниже) к другим формулам или ячейкам. Перенос ссылок обычно не влияет на производительность вычислений, за исключением крайних случаев для первого вычисления книги, где для создания разумной последовательности вычислений может потребоваться больше времени, если существует множество формул, которые должны отложить их вычисление.
Свести к минимуму использование круглых ссылок с помощью итерации
Вычисление круговых ссылок с итерациями идет медленно, так как требуется несколько вычислений, и эти вычисления однопотоковые. Часто можно «разворачивать» круговые ссылки с помощью алгебры, чтобы итеративный расчет больше не требовался. Например, в расчетах денежного потока и процентов попробуйте рассчитать денежный поток перед процентами, рассчитать проценты, а затем рассчитать денежный поток, включая проценты.
Excel вычисляет круговые ссылки по листу без рассмотрения зависимостей. Таким образом, если циклические ссылки охватывают несколько листов, скорость вычислений обычно снижается. Попробуйте переместить все циклические ссылки на один лист или оптимизировать последовательность вычислений на листе, чтобы избежать ненужных вычислений.
Перед началом итеративных вычислений в Excel должен быть выполнен пересчет книги, в ходе которого определяются все циклические ссылки и зависимости. Этот процесс эквивалентен двум или трем итерациям вычислений.
После определения циклических ссылок и зависимостей на каждой итерации приложение Excel вычисляет не только все ячейки в циклической ссылке, но также и ячейки, зависящие от ячеек в цепочке циклической ссылке, и переменные ячейки с зависимостями. Сложное вычисление, которое зависит от ячеек в циклической ссылке, более эффективно поместить в отдельную закрытую книгу, которую следует открыть и пересчитать уже после того, как будет вычислена циклическая ссылка.
Важно уменьшить количество ячеек в круговом вычислении и время вычисления, которое эти ячейки принимают.
Избегайте связей между книгами
Избегайте междометных ссылок, когда это возможно; они могут быть медленными, легко сломанными и не всегда легко найти и исправить.
Использование небольшого числа крупных книг обычно (но не всегда) более эффективно, чем использование множества небольших книг. Некоторые исключения из этого могут быть, когда у вас есть много предварительных вычислений, которые настолько редко пересчитываются, что имеет смысл поместить их в отдельную книгу, или если у вас недостаточно оперативной памяти.
Попробуйте использовать простые прямые ссылки на ячейки в закрытых книгах. Это позволяет избежать пересчета всех связанных книг при пересчете любых книг. Кроме того, можно увидеть значения, которые Excel из закрытой книги, что часто важно для отладки и аудита книги.
Если не удается избежать использования связанных книг, попробуйте оставить все нужные книги открытыми (при этом книги, на которые указывают связи, следует открывать после того, как открыты книги, из которых исходят связи).
Минимизация связей между таблицами
Разбиение книги на множество листов обычно делает ее более простой в использовании, однако снижает производительность вычислений ссылок на другие листы относительно ссылок в пределах одного листа.
Минимизация используемого диапазона
Чтобы сохранить память и уменьшить размер файла, Excel пытается хранить сведения только о области на используемом таблице. Эта область называется используемый диапазон. Некоторые операции редактирования и форматирования охватывают область, значительно превышающую диапазон, который на данный момент считается используемым. Это может привести к проблемам, связанным с производительностью и размером файла.
Видимый используемый диапазон можно проверить на таблице с помощью Ctrl+End. Если это чрезмерно, следует удалить все строки и столбцы ниже и справа от реальной последней используемой ячейки, а затем сохранить книгу. Перед этим следует создать резервную копию. Если некоторые формулы содержат диапазоны, указывающие или ссылающиеся на удаленные области, эти диапазоны будут уменьшены в размере или получат значение #Н/Д.
Разрешить дополнительные данные
Если в листы часто добавляются строки или столбцы данных, необходимо найти способ автоматического задания ссылок формул Excel на новые области данных вместо того, чтобы каждый раз искать и обновлять формулы.
Для этого можно использовать в формулах большой диапазон, который выходит далеко за пределы текущей области данных. Тем не менее, в некоторых случаях это может привести к неэффективным вычислениям и сложностям при обслуживании, поскольку при удалении строк и столбцов диапазон может быть уменьшен без уведомления.
Использование структурированных ссылок таблицы (рекомендуется)
Начиная с Excel 2007 г. можно использовать структурированные ссылки на таблицы, которые автоматически расширяются и уменьшаются по мере увеличения или уменьшения размера ссылок на таблицу.
Такой подход имеет ряд преимуществ:
Существует меньше недостатков производительности, чем альтернативы для целых ссылок столбцов и динамических диапазонов.
Легко иметь несколько таблиц данных на одном столе.
Возможность расширения и сокращения внедренных в таблицу формул в соответствии с изменением размера области данных.
Кроме того, используйте ссылки на целые столбцы и строки
Альтернативный подход заключается в использовании ссылки на столбец целиком, например, $A:$A. Эта ссылка возвращает все строки в столбце A. В этом случае все добавляемые данные всегда будут включаться в ссылку.
Такой подход имеет свои преимущества и недостатки:
Многие встроенные функции Excel (SUM, SUMIF) эффективно вычисляют ссылки на столбцы целиком, поскольку они автоматически распознают последнюю использованную строку в столбце. Тем не менее, функции вычисления массивов, такие как SUMPRODUCT, либо не могут обрабатывать ссылки на столбцы целиком, либо вычисляют все ячейки в столбце.
Функции, определенные пользователем, не распознают последнюю строку столбца автоматически и, следовательно, часто вычисляют ссылки на целые столбцы неэффективно. Тем не менее, запрограммировать пользовательские функции на распознавание последней использованной строки достаточно легко.
Сложно использовать целые ссылки столбцов, если на одном столе имеется несколько таблиц данных.
В Excel 2007 и более поздних версиях формулы массива могут обрабатывать ссылки на целые столбцы, но это заставляет вычисления для всех ячеек в столбце, включая пустые ячейки. Для крупных таблиц, содержащих миллионы строк, это может привести к существенному снижению производительности.
Кроме того, используйте динамические диапазоны
С помощью функций OFFSET или INDEX и COUNTA в определении именуемого диапазона можно сделать область, на которую ссылается названный диапазон динамически расширяемой и контрактной. Например, создайте определенное имя с помощью одной из следующих формул:
При использовании имени динамического диапазона в формуле он автоматически расширяется для включения новых записей.
Использование формулы INDEX для динамического диапазона, как правило, предпочтительнее формулы OFFSET , так как OFFSET имеет недостатки в том, что это волатильная функция, которая будет вычисляться при каждом пересчете.
Производительность снижается, так как функция COUNTA в формуле динамического диапазона должна исследовать множество строк. Это снижение производительности можно свести к минимуму, храня часть COUNTA формулы в отдельной ячейке или определенном имени, а затем ссылаясь на ячейку или имя в динамическом диапазоне:
Вы также можете использовать функции, такие как INDIRECT , для построения динамических диапазонов, но НЕПРЯМАЯ изменчива и всегда вычисляет однопоточную.
Применение динамических диапазонов имеет свои преимущества и недостатки:
Динамические диапазоны эффективно использовать для ограничения числа вычислений, выполняемых формулами массива.
Использование нескольких динамических диапазонов в одном столбце требует специальных функций подсчета.
Использование большого числа динамических диапазонов может привести к снижению производительности.
Улучшение времени вычислений при досмотре
В Office 365 версии 1809 и более поздних функции Excel ВПР, ГПР и ПОИСКПОЗ для поиска точного совпадения в несортированных данных выполняются как никогда быстро при поиске в нескольких столбцах (или строках с помощью ГПР) из одного диапазона таблицы.
Тем не менее, для более ранних Excel, lookups по-прежнему часто значительные препятствия вычислений. Тем не менее, существует много способов оптимизации вычисления поиска. Если используется параметр точного совпадения, время вычисления функции пропорционально числу ячеек, проверяемому до нахождения совпадения. Для поиска в больших диапазонах это время может быть достаточно велико.
Время поиска с использованием параметров приблизительного совпадения VLOOKUP, HLOOKUP и MATCH для отсортированных данных достаточно мало и не увеличивается существенно с изменением длины диапазона, для которого выполняется поиск. В этом случае характеристики аналогичны характеристикам двоичного поиска.
Понимание параметров lookup
Убедитесь, что вы понимаете параметры match-type и range-lookup в MATCH, VLOOKUP и HLOOKUP.
В следующем примере кода показан синтаксис функции MATCH. Дополнительные сведения см. в описании метода Match объекта WorksheetFunction.
Matchtype=1 возвращает самый большой совпадение, меньшее или равное значению при сортировке массива смотровых данных (приблизительное совпадение). Если массив просмотров не сортироваться по возрастанию, MATCH возвращает неправильный ответ. Параметр по умолчанию является приблизительным соответствием сортировке по возрастанию.
Matchtype=0 запрашивает точное совпадение. При этом предполагается, что данные не отсортированы.
Matchtype=-1 возвращает наименьшее совпадение, значение которого не меньше значения поиска, при сортировке массива поиска по убыванию (приблизительное совпадение).
В следующем примере кода показан синтаксис функций VLOOKUP и HLOOKUP. Дополнительные сведения см. в описании методов ВПР и ГПР объекта WorksheetFunction.
Range-lookup=TRUE возвращает наибольшее совпадение, значение которого не превышает значение поиска (приблизительное совпадение). Это параметр по умолчанию. Табличные массивы должны быть отсортированы по возрастанию.
Range-lookup=FALSE запрашивает точное совпадение. При этом предполагается, что данные не отсортированы.
По возможности рекомендуется избегать поиска неотсортированных данных, поскольку это влечет за собой снижение производительности. Если данные сортировать, но нужно точное совпадение, см. в примере Использование двух смотров для сортировки данных с недостающими значениями.
Используйте INDEX и MATCH или OFFSET вместо VLOOKUP
Попробуйте использовать функции INDEX и MATCH вместо VLOOKUP. Хотя VLOOKUP немного быстрее (примерно на 5 процентов быстрее), проще и использует меньше памяти, чем сочетание MATCH и INDEX или OFFSET, дополнительная гибкость, которую предлагают MATCH и INDEX , часто позволяет значительно сэкономить время. Например, можно сохранить результат точного совпадения MATCH в ячейке и затем повторно использовать его в нескольких выражениях INDEX.
Функция INDEX является быстрой и нестабильная, что ускоряет пересчет. Функция OFFSET также работает быстро; однако это волатильная функция, которая иногда значительно увеличивает время, необходимое для обработки цепочки вычислений.
Легко преобразовать VLOOKUP в INDEX и MATCH. В следующих двух утверждениях возвращается один и тот же ответ:
Ускорение смотров
Поскольку поиск с точным совпадением может выполняться достаточно медленно, можно рассмотреть следующие способы повышения производительности:
Используйте один лист. Это быстрее, чтобы сохранить lookups и данные на одном листе.
По возможности сначала выполняйте сортировку данных (функция SORT работает быстрее). После выполнения функции SORT используйте приблизительное совпадение.
Если требуется выполнить поиск с точным совпадением, попробуйте максимально ограничить диапазон сканируемых ячеек. Используйте таблицы и структурированные ссылки или динамические имена диапазонов, а не ссылаясь на большое количество строк или столбцов. В некоторых случаях можно заранее вычислить нижние и верхние границы диапазона для поиска.
Используйте два вида для сортировки данных с недостающими значениями
Два примерных совпадения значительно быстрее одного точного совпадения для получения более нескольких строк. (Точка breakeven составляет около 10-20 строк.)
Если вы можете сортировать данные, но все еще не можете использовать примерный совпадение, так как не можете быть уверены в том, что значение, которое вы ищете, существует в диапазоне поисков, вы можете использовать эту формулу:
В первой части формулы осуществляется поиск приблизительного совпадения для самого столбца поиска.
Вы можете проверить, совпадает ли ответ из столбца lookup со значением lookup (в этом случае у вас есть точное совпадение) с помощью следующей формулы:
Если эта формула возвращает True, вы нашли точное совпадение, чтобы можно было сделать примерный просмотр еще раз, но на этот раз верните ответ из нужного столбца.
Если ответ из столбца lookup не совпадает со значением lookup, у вас отсутствует значение, и формула возвращает значение «notexist».
Обратите внимание, что если выполняется поиск значения, которое меньше, чем минимальное значение в списке, отображается сообщение об ошибке. Можно реализовать обработку этой ошибки с помощью функции IFERROR или добавить в список минимальное тестовое значение.
Использование функции IFERROR для несортных данных с отсутствующих значений
Если необходимо использовать точный вид совпадения для несортных данных, и вы не можете быть уверены в том, существует ли значение lookup, часто необходимо обрабатывать возвращаемую #N/A, если совпадение не найдено. Начиная с Excel 2007 г. вы можете использовать функцию IFERROR, которая является простой и быстрой.
В более ранних версиях можно применять простой, но более медленный способ с использованием функции IF, подразумевающий выполнение двух операций поиска.
Чтобы избежать двойного поиска точного совпадения, можно один раз выполнить поиск MATCH с точным совпадением, сохранить результат в ячейке, а затем проверять этот результат перед выполнением функции INDEX.
Если нельзя использовать две ячейки, воспользуйтесь функцией COUNTIF. Как правило, это быстрее точного совпадения.
Используйте MATCH и INDEX для точного совпадения в нескольких столбцах
Во многих случаях можно многократно использовать сохраненное точное совпадение MATCH. Например, при выполнении точного поиска в нескольких столбцах результатов можно сэкономить время, используя одно выражение MATCH и несколько выражений INDEX вместо множества выражений VLOOKUP.
Добавьте дополнительный столбец ДЛЯ MATCH для хранения результата ( stored_row ), и для каждого столбца результатов используйте следующие:
Также можно использовать функцию VLOOKUP в формуле массива. (Формулы Массива необходимо вводить с помощью Ctrl+-Shift+Enter. Excel добавить , чтобы показать, что это формула массива).
Использование INDEX для набора состояных строк или столбцов
Одна операция поиска может возвращать несколько ячеек. Для поиска в непрерывной последовательности из нескольких столбцов можно использовать функцию INDEX в формуле массива, что позволит возвращать несколько столбцов за один раз (используйте 0 в качестве номера столбца). Также можно использовать INDEX для возврата нескольких строк за один раз.
Это выражение возвращает столбцы с A по J из сохраненной строки, созданной предыдущим выражением MATCH.
Использование MATCH для возврата прямоугольного блока ячеек
Используйте функции MATCH и OFFSET , чтобы вернуть прямоугольный блок ячеек.
Использование MATCH и INDEX для двухмерного смотра
Вы можете эффективно выполнять двухмерный просмотр таблицы с помощью отдельных смотров на строках и столбцах таблицы с помощью функции INDEX с двумя встроенными функциями MATCH , одной для строки и одной для столбца.
Используйте диапазон подмножество для многоиндексации
В больших таблицах часто требуется искать с помощью нескольких индексов, таких как поиск объемов продуктов в стране. Для этого можно объединить индексы и выполнить поиск с использованием объединенных значений поиска. Тем не менее, такой подход неэффективен по двум причинам:
Операция объединения строк требует больших затрат вычислительных ресурсов.
Поиск охватывает большой диапазон.
Часто эффективнее вычислять диапазон подмножество для поиска (например, найдя первую и последнюю строки для страны, а затем подсмотрев продукт в этом диапазоне подмножество).
Рассмотрим параметры трехмерного lookup
Чтобы выполнять поиск в таблице в дополнение к строке и столбцу, можно использовать следующие способы, в которых основной акцент делается на способ поиска или выбора таблицы в Excel.
Если каждая таблица, которую нужно искать (третье измерение), хранится в виде набора имен структурированных таблиц, имен диапазонов или таблицы текстовых строк, которые представляют диапазоны, вы можете использовать функции CHOOSE или INDIRECT .
В некоторых случаях более эффективно будет использовать функцию CHOOSE и имена диапазонов. Функция CHOOSE не является переменной, однако оптимально подходит только при наличии небольшого числа таблиц. В этом примере динамически TableLookup_Value используется выбор имени диапазона ( TableName1, TableName2, . ) для использования в таблице lookup.
В следующем примере используется функция INDIRECT и TableLookup_Value динамически создается имя листа, используемое для таблицы lookup. Этот метод достаточно прост и эффективен при работе с большим числом таблиц. Поскольку НЕПРЯМАЯ функция является переменной однопотной функцией, при каждом вычислении при каждом вычислении высчитывается однопоток, даже если данные не изменились. Использование этого метода медленно.
Также можно использовать функцию VLOOKUP для поиска имени листа или текстовой строки, которые будут использоваться для таблицы, а затем с помощью функции INDIRECT преобразовать полученный текст в диапазон.
Другой способ заключается в объединении всех таблиц в одну большую таблицу с дополнительным столбцом, в котором содержатся идентификаторы каждой таблицы. Этот способ можно применять для поиска по нескольким индексам, который показан в предыдущих примерах.
Использование подмайки
Функции MATCH, VLOOKUP и HLOOKUP позволяют использовать символы под диктовки ? (любой отдельный символ) и * (без символов или какого-либо количества символов) в алфавитных совпадениях. В некоторых случаях такой метод может использоваться для поиска уникального совпадения.
Оптимизация формул массива и SUMPRODUCT
Применение формул массива и функций SUMPRODUCT дает широкие возможности, однако при этом следует соблюдать осторожность. Для формулы одного массива может потребоваться много вычислений.
Чем меньшее число ячеек и выражений вычисляется в формуле массива, тем выше будет скорость ее вычисления. Помните, что формула массива немного похож на волатильную формулу: если одна из ячеек, на которые она ссылается, является волатильной или была пересчитана, формула массива вычисляет все ячейки формулы и оценивает все виртуальные ячейки, необходимые для вычисления.
Оптимизация скорости вычисления формул массива:
Выведите ссылки на выражения и диапазоны за пределы формул массива в отдельные вспомогательные столбцы и строки. Это позволит более эффективно использовать процесс интеллектуального пересчета в Excel.
Не задавайте ссылки на строки целиком или большее, чем требуется, число строк и столбцов. Формулы массива принудительно вычисляют все ссылки на ячейки в формуле (в том числе и ссылки на пустые и неиспользуемые ячейки). Поскольку начиная с версии Excel 2007 поддерживается более миллиона строк, формула массива, ссылающаяся на столбец целиком, будет вычисляться очень медленно.
Начиная с версии Excel 2007, по возможности используйте структурированные ссылки, чтобы свести к минимуму число ячеек, которые вычисляются в формуле массива.
В версиях, ранее чем Excel 2007 г., используйте динамические имена диапазонов, где это возможно. Несмотря на то, что при таком подходе используется переменная функция, это позволит свести к минимуму размеры диапазонов.
Обращайте внимание на формулы массива, ссылающиеся одновременно на строку и столбец: в этом случае вычисляется прямоугольный диапазон.
По возможности, используйте функцию SUMPRODUCT. Она работает несколько быстрее по сравнению с эквивалентной формулой массива.
Рассмотрите варианты использования SUM для формул массива с несколькими состояниями
Вместо формул массива всегда следует использовать функции SUMIFS, COUNTIFS и AVERAGEIFS, так как их гораздо быстрее вычислять. Excel 2016 быстро внедряет функции MAXIFS и MINIFS.
В версиях до Excel 2007 года формулы массива часто используются для вычисления суммы с несколькими условиями. Это относительно простой (особенно если используется Мастер суммирования Excel), однако зачастую очень медленный способ. Обычно те же результаты можно получить гораздо быстрее. При работе с небольшим числом формул СУММ с несколькими условиями можно использовать функцию DSUM, которая значительно быстрее эквивалентной формулы массива.
Если все же требуется использовать формулы массива, можно применять следующие эффективные методы для повышения их скорости:
Используйте динамические имена диапазонов или структурированные ссылки на таблицы, чтобы свести к минимуму количество ячеек.
Разделите несколько условий на столбец формул помощников, которые возвращают True или False для каждой строки, а затем со ссылкой на столбец помощника в формуле SUMIF или массиве. Это может не уменьшить количество вычислений для одной формулы массива; Однако большую часть времени он позволяет процессу умной пересчета пересчета пересчитывать только формулы в столбце помощника, которые необходимо пересчитать.
Рассмотрите возможность объединения всех условий в одно, для которого будет использоваться функция SUMIF.
Если данные можно сортировать, подсчитывайте группы строк и ограничив формулы массива просмотром групп подмножество.
Приоритизация функций семейства IFS с несколькими состояниями SUMIFS, COUNTIFS и других функций семейства IFS
Эти функции по очереди оценивают каждое из условий слева направо. Поэтому более эффективно сначала ставить самое строгое условие, чтобы последующие условия смотрели только на наименьшее количество строк.
Рассмотрите варианты использования SUMPRODUCT для формул массива с несколькими состояниями
Начиная с Excel 2007 г. вместо формул SUMPRODUCT всегда следует использовать функции SUMIFS, COUNTIFS и AVERAGEIFS, а также функции EXCEL 2016 MAXIFS и MINIFS.
В более ранних версиях применение функции SUMPRODUCT вместо формул массива SUM давало ряд преимуществ:
SUMPRODUCT не нужно вводить с помощью Ctrl+Shift+Enter.
Функция SUMPRODUCT обычно выполняется несколько быстрее (от 5 до 10 процентов).
Используйте SUMPRODUCT для формул массива с несколькими состояниями следующим образом:
В этом примере Condition1 и Condition2 являются условные выражения, такие как $A$1:$A$10000<=$Z4 . Поскольку условные выражения вместо числовых данных возвращают значения True или False, их необходимо привести к числовым значениям в функции SUMPRODUCT. Это можно сделать с помощью двух знаков минус (— или путем добавления 0 (+0) или умножения на 1 (x1). Использование — немного быстрее , чем +0 или x1.
Обратите внимание, что размер и форма диапазонов или массивов, которые используются в суммируемых диапазонах и условных выражениях, должны быть одинаковыми. При этом они не могут содержать столбцы целиком.
Можно также непосредственно умножать термины внутри SUMPRODUCT , а не разделять их на запятые:
Обычно это немного медленнее, чем с помощью синтаксиса запятой, и это дает ошибку, если диапазон суммы содержит текстовое значение. Однако немного более гибким является то, что диапазон для суммы может иметь, например, несколько столбцов, если условия имеют только один столбец.
Использование SUMPRODUCT для умножения и добавления диапазонов и массивов
В некоторых случаях, например, при вычислении средневзвешенных значений, когда требуется перемножение диапазонов чисел и суммирование результатов, применение синтаксиса функции SUMPRODUCT с разделением запятыми может быть на 20–25 процентов эффективнее, чем использование функции SUM с вводом массива.
Все эти три формулы дают одинаковый результат, но третья формула, использующая синтаксис запятой для SUMPRODUCT, занимает всего около 77 процентов времени вычисления, которое требуется двум другим формулам.
Будьте в курсе потенциальных препятствий для вычисления массива и функций
Ядро вычислений Excel оптимизировано для работы с формулами массива и функциями, ссылающимися на диапазоны. Тем не менее, при нестандартном использовании таких формул и функций в некоторых случаях возможно существенное увеличение времени вычисления.
При обнаружении проблем при вычислениях с применением формул и функций диапазонов следует обратить внимание на наличие следующих препятствий:
Частично перекрывающиеся ссылки.
Формулы массива и функции диапазонов, ссылающиеся на блок ячеек, которые вычисляются в другой формуле массива или функции диапазона. Такие ситуации достаточно часто происходят во время анализа временных последовательностей.
Наличие различных наборов формул, один из которых ссылается по строке, а второй ссылается на первый набор по столбцу.
Крупный набор одностроковых формул массива, охватывающих блок столбцов с функцией SUM в нижней части каждого столбца.
Эффективное использование функций
Функции значительно расширяют Excel, но способ их использования часто влияет на время вычисления.
Избегайте однопотных функций
Большинство родных Excel хорошо работают с многопотным вычислением. Однако, по возможности, не следует использовать следующие функции с одним потоком:
- Пользовательские функции VBA и Automation (UDFs), но UDF на основе XLL могут быть многопотоковые
- PHONETIC
- ЯЧЕЙКА, когда используется аргумент «format» или «address»
- СМЕЩ
- ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ
- КУБЭЛЕМЕНТ
- КУБЗНАЧЕНИЕ
- КУБСВОЙСТВОЭЛЕМЕНТА
- КУБМНОЖ
- КУБПОРЭЛЕМЕНТ
- КУБЭЛЕМЕНТКИП
- КУБЧИСЛОЭЛМНОЖ
- АДРЕС, где дается пятый параметр ( sheet_name )
- Любая функция базы данных (БДСУММ, ДСРЗНАЧ, и т. д.), которая ссылается на сводную таблицу
- ТИП.ОШИБКИ
- ГИПЕРССЫЛКА
Используйте таблицы для функций, которые обрабатывают диапазоны
Для таких функций, как SUM, SUMIF и SUMIFS , которые обрабатывают диапазоны, время вычисления пропорционально количеству используемых ячеек, которые вы суммируете или подсчитываете. Неиспользованые ячейки не рассматриваются, поэтому ссылки на столбцы являются относительно эффективными, но лучше не включать больше используемых ячеек, чем нужно. Используйте таблицы или вычислять диапазоны подмножество или динамические диапазоны.
Уменьшение летучих функций
Применение переменных функций может уменьшить скорость пересчета, поскольку в таком случае увеличивается число пересчитываемых при каждом вычислении формул.
Зачастую можно уменьшить число переменных функций, используя функцию INDEX вместо OFFSET и функцию CHOOSE вместо INDIRECT. Тем не менее , OFFSET — это быстрая функция, которую часто можно использовать творческими способами, которые дают быстрый расчет.
Использование функций C или C++, определенных пользователем
Пользовательские функции, запрограммированные в C или C++ и использующие функции надстройки C (XLL), обычно выполняются быстрее, чем пользовательские функции, разработанные с помощью надстройок VBA или Automation (XLA или Automation). Дополнительные сведения см. в Excel XLLs 2010.
Производительность определенных пользователем функций VBA чувствительна к тем, как их программировать и вызывать.
Использование более быстрых функций, определенных пользователем VBA
Обычно гораздо быстрее использовать Excel и функции таблицы, чем использовать функции, определенные пользователем VBA. Это связано с тем, что при применении каждой пользовательской функции небольшой объем ресурсов расходуется на вызов функции и достаточно значительный объем ресурсов на передачу данных из Excel в такую функцию. Тем не менее, эффективно проработанные и вызываемые функции могут выполняться значительно быстрее по сравнению со сложными формулами массива.
Убедитесь, что все ссылки на ячейки листа в пользовательской функции помещены во входные параметры, а не в тело самой функции, что позволяет избежать добавления ненужных элементов Application.Volatile.
Если у вас должно быть много формул, которые используют определенные пользователем функции, убедитесь, что вы находитесь в режиме ручного вычисления и что вычисление инициировано из VBA. Пользовательские функции VBA вычисляются значительно медленнее, если вычисление вызывается не из VBA (например, в автоматическом режиме или с помощью клавиши F9 в ручном режиме). Это особенно актуально, если Visual Basic редактор (Alt+F11) открыт или открыт в текущем Excel сеансе.
В этом случае можно перехватывать нажатие клавиши F9 и выполнять перенаправление в подпрограмму вычисления VBA, как показано ниже. Добавьте этот субраутин в модуль Thisworkbook .
Добавьте в стандартный модуль следующую подпрограмму.
Определенные пользователем функции в надстройки Automation (Excel 2002 и более поздних версиях) не накладные расходы Visual Basic редактора, так как они не используют интегрированный редактор. Другие характеристики производительности пользовательских функций Visual Basic 6 в надстройках автоматизации аналогичны функциям VBA.
Если пользовательская функция обрабатывает каждую ячейку диапазона, следует объявить входной параметр как диапазон, назначить его переменной, содержащей массив, и реализовать его циклический перебор. Для эффективной обработки ссылок на столбцы целиком необходимо использовать подмножество входного диапазона, разбив его на пересечении с используемым диапазоном, как показано в этом примере.
Если для обработки диапазона в пользовательской функции используются функции листа или методы объектной модели Excel, зачастую более эффективно хранить диапазон в виде объектной переменной, чем передавать все данные из Excel в такую функцию.
Если функция, определяемая пользователем, вызвана на ранней стадии цепочки вычислений, она может быть передана в качестве нерасчетных аргументов. Внутри определенной пользователем функции можно обнаружить нерасчетные ячейки с помощью следующего теста для пустых ячеек, содержащих формулу:
Для каждого вызова на определенный пользователем функции и для каждого переноса данных из центра Excel VBA существует время. Иногда одна формула многоклеточного массива, определяемая пользователем, может помочь вам свести к минимуму эти накладные расходы путем объединения нескольких вызовов функций в одну функцию с диапазоном многоклеточных входных данных, который возвращает диапазон ответов.
Свести к минимуму диапазон ячеек, которые ссылались на SUM и SUMIF
Функции Excel SUM и SUMIF часто используются при работе с большим числом ячеек. Время вычисления этих функций пропорционально числу охватываемых ячеек, поэтому рекомендуется свести к минимуму диапазон ячеек, на которые ссылаются функции.
Использование функций SUMIF, COUNTIF, SUMIFS, COUNTIFS и других функций IFS
Использование символов подмайки ? (любой отдельный символ) * и _ (без символов или какого-либо количества символов) в критериях для алфавитных диапазонов в составе функций _ SUMIF, COUNTIF, SUMIFS, COUNTIFS и других функций IFS.
Выбор метода для накопительных и периодических накопительных накопителей
Существует два метода ведения периодических или накопительных СУМов. Предположим, что цифры, которые необходимо совокупно суммить, находятся в столбце A, и вы хотите, чтобы столбец B содержал совокупную сумму; вы можете сделать любой из следующих ниже.
Вы можете создать формулу в столбце B, например =SUM($A$1:$A2) , и перетаскивать ее по мере необходимости. В качестве начальной ячейки для функции СУММ зафиксирована ячейка A1, однако, поскольку конечная ячейка содержит относительную ссылку на строку, ее номер автоматически увеличивается для каждой строки.
Вы можете создать формулу, =$A1 например в ячейке B1 =$B1+$A2 и в ячейке B2, и перетаскивать ее по мере необходимости. В этом случае накопительная сумма в ячейке будет вычисляться посредством сложения значения в текущей строке с накопительной суммой в предыдущей строке (аналогично применению функции SUM).
Для набора из 1000 строк при первом способе приложение Excel выполняет около 500 000 вычислений. Для этого же набора второй способ требует всего 2000 вычислений.
Вычислять суммы подмножество
При нескольких отсортифицированных индексах в таблице (например, Site within Area) часто можно сэкономить значительное время вычисления, динамически вычисляя адрес подмножеского диапазона строк (или столбцов), которые можно использовать в функции SUM или SUMIF .
Чтобы рассчитать адрес подмножеского диапазона строк или столбцов:
Подсчитайте число строк для каждого подблока.
Чтобы определить начальную строку каждого блока, суммируйте число строк накопительно.
Используйте функцию OFFSET, указав в качестве параметра начальную строку и число строк, чтобы вернуть в функцию SUM или SUMIF поддиапазон, который охватывает только определенный блок строк.
Использование SUBTOTAL для отфильтрованных списков
С помощью функции SUBTOTAL можно суммировать (функция SUM) отфильтрованные списки. Функция SUBTOTAL эффективна в использовании, поскольку, в отличие от функции SUM, она пропускает следующие элементы:
Скрытые в результате фильтрации списка строки. Начиная с версии Excel 2003, можно также выполнять функцию SUBTOTAL, пропуская все скрытые, а не только отфильтрованные строки.
Другие функции SUBTOTAL.
Использование функции AGGREGATE
Функция AGGREGATE — это эффективный и эффективный способ вычисления 19 различных методов агрегации данных ( таких как SUM, MEDIAN, PERCENTILE и LARGE). AGGREGATE может игнорировать скрытые или отфильтрованные строки, значения ошибок и вложенные функции SUBTOTAL и AGGREGATE .
Избегайте использования DFunctions
Функции DSUM, DCOUNT, DAVERAGE и аналогичные им работают намного быстрее по сравнению с эквивалентными формулами массива. Недостатком таких функций является то, что условие должно находиться в отдельном диапазоне, что делает их использование непрактичным во многих случаях. Начиная с версии Excel 2007, вместо этих функций следует использовать функции SUMIFS, COUNTIFS и AVERAGEIFS.
Создание более быстрых макрос VBA
Чтобы быстрее создавать макрос VBA, используйте следующие советы.
Выключите все, кроме необходимых элементов во время работы кода
Чтобы повысить производительность макрос VBA, явно отключите функциональность, которая не требуется во время выполнения кода. Часто один перерасчет или один перерисовка после выполнения кода — это все, что необходимо и может повысить производительность. После выполнения кода восстановите функциональность до исходного состояния.
При выполнении макросов VBA обычно можно отключать следующие функции:
Application.ScreenUpdating Выключите обновление экрана. Если application.ScreenUpdating задавалось false, Excel не перерисовывание экрана. При запуске кода экран быстро обновляется, и пользователю обычно не требуется видеть каждое обновление. Обновление экрана после выполнения кода повышает производительность.
Application.DisplayStatusBar отключите панель состояния. Если в Application.DisplayStatusBar установлено false, Excel не отображается панель состояния. Параметр панели состояния отделен от параметра обновления экрана, чтобы можно было отображать состояние текущей операции, даже если экран не обновляется. Однако если вам не нужно отображать состояние каждой операции, отключите планку состояния во время выполнения кода, а также повысит производительность.
Переход application.Calculation на ручной расчет. Если для application.Calculation установлено xlCalculationManual, Excel вычисляет книгу только тогда, когда пользователь явно инициирует вычисление. В режиме автоматического вычисления Excel определяет время вычисления. Например, каждый раз, когда значение ячейки, связанное с формулой, Excel пересчитывает формулу. Если переключить режим вычисления на ручной, можно дождаться обновления всех ячеек, связанных с формулой, перед пересчетом книги. Пересчитав книгу только при необходимости во время выполнения кода, можно повысить производительность.
Application.EnableEvents выключает события. Если application.EnableEvents настроено на False, Excel не вызывает события. Если надстройки прослушивают события Excel, эти надстройки потребляют ресурсы на компьютере при записи событий. Если надстройка не требуется записывать события, происходящие во время выполнения кода, отключение событий повышает производительность.
ActiveSheet.DisplayPageBreaks выключает разрывы страниц. Если в ActiveSheet.DisplayPageBreaks установлено false, Excel не отображает разрывы страниц. Нет необходимости пересчитывать разрывы страниц во время выполнения кода, а вычисление разрывов страниц после выполнения кода повышает производительность.
Не забудьте восстановить исходное состояние этих функций после выполнения кода.
В следующем примере показаны функции, которые можно отключить в процессе выполнения макроса VBA.
Чтение и написание больших блоков данных в одной операции
Для оптимизации кода рекомендуется явно уменьшить число операций по передаче данных между приложением Excel и кодом. Вместо перебора ячеек по одной при получении и установке значений, рекомендуется получать и устанавливать значения для целого диапазона ячеек в одной строке с помощью переменной, содержащей двумерный массив значений. В следующем примере кода показано сравнение этих двух методов.
Ниже приведен неоптимизированный пример кода, в котором осуществляется перебор ячеек по одной для получения и установки значений ячеек в диапазоне A1:C10000. Эти ячейки не содержат формул.
Ниже показан оптимизированный пример кода, в котором для получения и установки значений одновременно всех ячеек в диапазоне A1:C10000 используется массив. Эти ячейки не содержат формул.
Использование . Value2, а не . Значение или . Текст при чтении данных из Excel диапазона
- . Текст возвращает отформатированные значения ячейки. Это медленно, может возвращать ###, если пользователь масштабировать, и может потерять точность.
- . Значение возвращает переменную даты VBA или VBA, если диапазон был отформатирован как Date или Currency. Это медленно, может терять точность и может вызывать ошибки при вызове функций таблицы.
- . Value2 быстро и не изменяет данные, извлеченные из Excel.
Избегайте выбора и активации объектов
Процесс выбора и активации объектов сопряжен со значительно большими затратами вычислительных ресурсов, чем указание прямых ссылок на объекты. Ссылаясь на объект, например Range или Shape напрямую, вы можете повысить производительность. В следующем примере кода показано сравнение этих двух методов.
В следующем примере кода показан не оптимизированный код, который выбирает каждую фигуру на активном листе и изменяет текст на «Hello».
В следующем примере кода показан оптимизированный код, который ссылается на каждую форму напрямую и изменяет текст на «Hello».
Используйте эти дополнительные оптимизации производительности VBA
Ниже приведен список дополнительных параметров, влияющих на производительность, которые можно оптимизировать в коде VBA:
Возвращайте результаты посредством присвоения массива напрямую переменной Range.
Объявляйте переменные с явными типами. Это позволит избежать затрат ресурсов на определение типа данных при выполнении кода (многократное выполнение таких операций в цикле существенно скажется на производительности).
Для простых, часто используемых в коде функций можно самостоятельно реализовать функции в VBA вместо использования объекта WorksheetFunction. Дополнительные сведения см. в дополнительных сведениях Об использовании функций, определяемой пользователем VBA.
Воспользуйтесь методом Range.SpecialCells для уменьшения числа ячеек, с которыми взаимодействует код.
Рассмотрите повышение производительности, если вы реализовали свои функции с помощью API C в SDK XLL. Дополнительные сведения см. в Excel документации XLL SDK 2010 г.
Рассмотрим производительность и размер Excel форматов файлов
Начиная с версии Excel 2007, в приложении Excel поддерживается более широкий набор форматов файлов по сравнению с более ранними версиями. Игнорируя варианты форматов файлов Макроса, Шаблона, Надстройки, PDF и XPS, три основных формата: XLS, XLSB и XLSX.
Формат XLS
Формат XLS является аналогом такого же формата в более ранних версиях. При использовании этого формата размер книги ограничен 256 столбцами и 65 536 строками. При сохранении книги Excel 2007 или Excel 2010 в формате XLS выполняется проверка совместимости. Размер файла практически всегда совпадает с файлами предыдущих версий (иногда сохраняется некоторая дополнительная информация), а производительность может быть несколько ниже, чем в более ранних версиях. Функции многопоточной оптимизации порядка вычислений, реализованные в Excel, в формате XLS не сохраняются. В связи с этим, после сохранения книги в формате XLS, ее закрытия и повторного открытия скорость вычислений может снизиться.
Формат XLSB
Двоичный формат XLSB впервые представлен в Excel 2007. Она структурирована как сжатая папка, которая содержит множество двоичных файлов. Он намного компактнее формата XLS, но объем сжатия зависит от содержимого книги. Например, для десяти разных книг степень сжатия может находиться в диапазоне от 2 до 8 (в среднем обычно степень сжатия находится в районе 4). Начиная с версии Excel 2007, производительность при открытии и сохранении в этом формате лишь незначительно ухудшается по сравнению с форматом XLS.
Формат XLSX
XLSX — это XML-формат, который был представлен и используется по умолчанию в приложении Excel 2007. Формат XLSX — это сжатая папка с множеством XML-файлов (если изменить расширение имени файла на .zip, можно открыть сжатую папку и изучить ее содержимое). В большинстве случаев размер XLSX-файла превышает размер файла в формате XLSB (в среднем около 1,5 раз), однако его размер по-прежнему будет значительно меньше размера аналогичного XLS-файла. Открытие и сохранение файлов в этом формате занимает несколько больше времени по сравнению с XLSB-файлами.
Откройте, закроем и сохраните книги
Иногда открытие, закрытие и сохранение книг может занимать значительно больше времени, чем их вычисление. В некоторых случаях это связано с большим размером книги, однако могут быть и другие причины такого поведения.
Если одна или несколько книг открываются и закрываются слишком медленно, это может быть вызвано одной из следующих причин.
Временные файлы.
Временные файлы могут накапливаться в каталоге Windows Temp (в Windows 95, Windows 98 и Windows ME), а также в каталоге Documents and Параметры User NameLocal Параметры Temp (в Windows 2000 г. и Windows XP). Excel создает эти файлы для книги и элементов управления, которые используются в открытых книгах. Кроме того, временные файлы могут создаваться программами установки ПО. Если приложение Excel перестало отвечать, может потребоваться удаление этих файлов вручную.
Слишком много временных файлов может вызвать проблемы, поэтому иногда их следует очищать. Однако если у вас установлено программное обеспечение, которое требует перезапуска компьютера, и вы еще этого не сделали, перед удалением временных файлов следует перезапустить.
Простой способ открыть каталог temp из меню Windows Пуск: нажмите кнопку Пуск, а затем нажмите кнопку Запустить. В текстовом окне введите %temp%, а затем нажмите кнопку ОК.
Отслеживание изменений в общей книге
Отслеживание изменений в общей книге влечет за собой значительное увеличение размера файла книги.
Фрагментарный файл swap
Убедитесь, что файл подкачки Windows располагается на диске, на котором достаточно свободного места и регулярно выполняется дефрагментация.
Книга с защищенной паролем структурой
Книга, которая защищена паролем (меню Tools > ProtectionProtect > > введите необязательный пароль), открывается и закрывается гораздо медленнее, чем та, которая защищена без дополнительного пароля.
Проблемы с используемым диапазоном
Слишком большой размер используемого диапазона обычно влечет за собой снижение скорости открытия и увеличение размера файла, особенно в том случае, когда такой диапазон содержит скрытые строки или столбцы нестандартной высоты или ширины. Дополнительные сведения о проблемах с используемым диапазоном см. в дополнительных сведениях о том, как свести к минимуму используемый диапазон.
Большое количество элементов управления на таблицах
Большое количество элементов управления (флажки, гиперссылки и т. д.) на таблицах может замедлить открытие книги из-за количества используемых временных файлов. Это также может привести к проблемам открытия или сохранения книги на WAN (или даже локальной сети). Если вы имеете эту проблему, то вы должны рассматривать перепроектировать вашу книгу.
Большое количество ссылок на другие книги
Перед открытием книги, содержащей ссылки, рекомендуется по возможности открыть книги, на которые она ссылается. Зачастую бывает гораздо эффективнее открыть книгу, чем считывать данные по ссылкам на закрытую книгу.
Параметры сканера вирусов
Некоторые параметры антивирусной программы могут вызывать проблемы или снижение скорости при открытии, закрытии или сохранении книг, особенно на сервере. Если есть основания предполагать наличие такого рода проблем, попробуйте на время отключить антивирусную программу.
Медленный расчет, вызывающий медленное открытие и сохранение
При некоторых обстоятельствах Excel при ее открывлении или сохранения Excel. Если время вычисления для вашей книги длинное и вызывает проблемы, убедитесь, что у вас есть набор вычислений в ручном режиме , и рассмотрите возможность отключения вычисления перед сохранением параметра (ToolsOptionsCalculation > ). >
Файлы панели инструментов (.xlb)
Проверьте размер файла панели инструментов. Типичный файл панели инструментов составляет от 10 до 20 КБ. XLB-файлы можно найти с *.xlb помощью Windows поиска. Каждый пользователь имеет уникальный XLB-файл. Добавление, изменение или настройка панели инструментов увеличивает размер файла toolbar.xlb. Удаление файла удаляет все настройки панели инструментов (переименование его в панель инструментов. OLD» является более безопасным). Новый XLB-файл создается при следующем Excel.
Дополнительные оптимизации производительности
Вы можете улучшить производительность в следующих областях.
Сводные таблицы
Сводные таблицы эффективно подходят для обобщения крупных объемов данных.
Итоги в качестве конечных результатов. Если требуется формировать итоги и промежуточные итоги в составе конечных результатов для книги, рекомендуется использовать сводные таблицы.
Итоги в качестве промежуточных результатов. С помощью сводных таблиц можно создавать эффективные сводные отчета. Тем не менее, не рекомендуется создавать формулы, в которых результаты сводной таблицы используются в качестве промежуточных итогов в цепочке вычислений, если не соблюдаются следующие условия:
Сводные таблицы надлежащим образом обновляются в процессе вычисления.
Сводные таблицы не изменялись, и данные по-прежнему видимы.
Если все же требуется использовать данные сводных таблиц в качестве промежуточных результатов, используйте функцию GETPIVOTDATA.
Условные форматы и проверка данных
Применение условного форматирования и проверки данных бывает крайне полезным, однако слишком активное использование этих функций может повлечь за собой существенное снижение скорости вычислений. Если ячейка отображается, каждая формула условного формата оценивается при каждом вычислении и при обновлении отображения ячейки, содержаной условный формат. В объектной модели Excel представлено свойство Worksheet.EnableFormatConditionsCalculation, с помощью которого можно включать и отключать вычисление условных форматов.
Определенные имена
Определенные имена — это одна из самых полезных возможностей приложения Excel, однако их применение может увеличить время вычисления. Использование имен, ссылающихся на другие листы, существенно усложняет процесс вычисления. Кроме того, настоятельно не рекомендуется использовать вложенные имена, которые ссылаются на другие имена.
Поскольку имена вычисляются при каждом вычислении формулы, которая ссылается на них, не рекомендуется помещать в определенные имена функции и формулы, требующие большого объема вычислений. В таких случаях гораздо более эффективно будет поместить такие функции и формулы в произвольную резервную ячейку и задавать ссылки на эту ячейку непосредственно или по имени.
Формулы, которые используются только время от времени
Многие книги содержат значительное количество формул и смотров, которые имеют дело с получением входных данных в соответствующую форму для расчетов, или используются в качестве защитных мер в отношении изменений размера или формы данных. Если у вас есть блоки формул, которые используются только изредка, можно скопировать и вставьте специальные значения, чтобы временно устранить формулы, или вы можете поместить их в отдельную редко открываемую книгу. Поскольку ошибки в таблицах часто вызваны тем, что они не замещены тем, что формулы были преобразованы в значения, предпочтительным может быть отдельный метод книги.
Использование достаточного количества памяти
32-битная версия Excel может использовать до 2 ГБ оперативной памяти или до 4 ГБ оперативной памяти для 32-битных версий 32-битных Excel 2013 и 2016. Тем не менее, компьютер, на котором работает приложение Excel, также потребляет определенный объем ресурсов памяти. Соответственно, если на компьютере установлено ровно 2 ГБ ОЗУ, приложение Excel не сможет полностью использовать допустимый объем памяти в 2 ГБ, поскольку часть ресурсов будет зарезервирована для операционной системы и других выполняемых программ. Чтобы оптимизировать производительность Excel на 32-битных компьютерах, рекомендуется иметь на компьютере не менее 3 ГБ оперативной памяти.
64-битная версия Excel не имеет ограничения 2 ГБ или до 4 ГБ. Дополнительные сведения см. в разделе «Большие наборы данных и 64-битная версия Excel» Excel производительности.
Заключение
В этой статье были охвачены способы оптимизации Excel, таких как ссылки, просмотры, формулы, функции и код VBA, чтобы избежать распространенных препятствий и повысить производительность.
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Зависает excel или долго открываются файлы excel — что делать?
Сейчас поделюсь маленьким опытом в решении проблем когда зависает excel. Вчера столкнулся на работе с непонятным глюком на нескольких компах, очень долго и с большими тормозами начали открываться файлы excel и word (хотя в процессах excel не отжирал и 1% cpu, т.е. загрузка компа была нулевая). Сделав небольшой анализ работоспособности компа было понятно, что дело ни в антивирусе и ни как ни в самом excel. На втором компе была идентичная ситуация очень долго открываются файлы excel .
1 Вариант
Самый распространенный случай, когда по умолчанию стоит принтер который не работает или не подключен и он находится в «неоперативном режиме». Для решения данной проблемы просто смените принтер по умолчанию на любой другой и проблема с зависанием Excel исчезнет!
2 Вариант
Бывает такое, что excel при работе с файлом начинает отжирать 15%-20% cpu, так быть не должно! Проверьте объем файла возможно он весит несколько десятков или сотен мегабайт, если это так, то он естественно будет у вас тормозить. В этой ситуации разберитесь почему так происходит, если у вас вставлены картинки, то уменьшите размер картинок перед тем как загружаете в файл Excel. т.е. надо оптимизировать файл.
3 Вариант (excel или word при открытии зависат)
При запуске текстового редактора Microsoft Word или Microsoft Excel Вы видите сообщение: «Проверка на наличие вирусов» Значит у вас при открытие файла Ваш антивирус проверяет его на наличии вирусов и т.д. и надстройка антивируса включена в Office. По мне так эта функция для параноиков и совершенно бесполезная. Но нервы она трепит сильно, поэтому ее мы сейчас научимся отключать.
1 Вариант:
Решение проблемы с зависанием Excel и надстройками можно решить кардинально просто удалить антивирус (он не всегда корректен, но описать его стоит)
2 Вариант:
- Закройте приложение Word или Excel
- Найдите файл библиотеки надстроек Word (WLL) в папках автозагрузки. По умолчанию папки автозагрузки имеют следующие пути:
Microsoft Office 2003
- C:Program FilesMicrosoft OfficeOffice11STARTUP
- C:Documents and Settings Your_User_Name Application DataMicrosoftWordSTARTUP
- Удалите WLL-файл и снова запустите приложение Word.
Microsoft Office 2007
- C:Program FilesMicrosoft OfficeOffice12STARTUP
- C:Documents and Settings Your_User_Name Application DataMicrosoftWordSTARTUP
- Удалите WLL-файл и снова запустите приложение Word.
Microsoft Office 2010
- Нажмите ФАЙЛ ->НАСТРОЙКИ ->НАДСТРОЙКИ -> тут смотрите и переходите к управлению Надстройками и отключаете все что относится к Антивирусу
4 Вариант (очень долго открывается, проблема только для Windows XP)
Данный вариант решения проблемы с зависает Excel подходит только для Windows XP, а решение заключается в правке команды при открытии файла из проводника.
- Пуск ->Панель управления ->Свойства папки ->Типы файлов -> ищем в списке формат XLS -> далее нажимаем «Дополнительно» ->выбираем действие Открыть и нажимаем изменить
- В пункте Приложение, исполняющие действие заменить «C:Program FilesMicrosoft OfficeOffice14EXCEL.EXE» /dde на «C:Program FilesMicrosoft OfficeOffice14EXCEL.EXE» /e «%1»
- А в пункте Сообщения DDE вставить запись [rem see command line]
- Везде нажать ОК, перезагрузите комп и радуйтесь жизни!
5 Вариант (очень долго открываются документы Excel по сети)
Данный метод подойдет только тем, что работает с документами Office из сетевых папок.
Данная проблема характерна для компьютеров на которые было установлено обновление Microsoft Office Validation Add-In (KB2501584) Это обновление, призванное обезопасить содержимое документов, в итоге начало гонять открываемый файл по сети, создавая лишнюю нагрузку и неудобство. Тут есть два вариант решения проблемы 1) Просто удалим это обновление через Установку и удаление программ, либо через реестор.
Для Excel — HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice11.0ExcelSecurityFileValidation
Для Word — HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice11.0WordSecurityFileValidation
Для Power Point — HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice11.0PowerPointSecurityFileValidation
Нас интересует параметр EnableOnLoad , оно может принимать следующие значения:
- 0 = Don’t validate
- 1 = Validate
- 2 = Validate unless called via object model
В нашем случае Значение нужно ставить 0
6 Вариант
С этим случаем я сталкивался всего пару раз, но нервов мне попортил он изрядно. Ситуация такая, открываете фаил, а он просто тупит так, что невозможно даже работать, а сам файл ну максимум 2 страницы текста или табличка. В такой ситуации сразу смотрите на размер файла, если в нем 2-3 страницы а фаил весит пару мегов, то я думаю уже стоит напрячься и сделать вывод что, что -то не так. Почему такое происходит, да все очень просто, некоторые манагеры (которые не очень в ладах с компами) пользуются одним/несколькими файлами WORD и EXCEL т.е. сделают в нем свою работу распечатают, а потом все стирают и делают в нем другую работу и в этом случае теги(а они есть и в exel и в word и в html) разрастаются в геометрической прогрессии. И как Вы поняли нужно делать следующие, открываем другой файл exel/word (создать новый, чистый) и скопировать из старого файла в новый только нужную информацию.
Если Вы хотите поделиться и дополнить мою инструкцию, то присылайте в комментариях свои варианты. Будем увеличивать инструкцию.
завис excel, тормозит excel, файл excel зависает, тормозит файл excel, зависает excel 2013, зависает excel 2007, excel 2010 зависает, зависает excel при сохранении, тормозит excel 2007, зависает excel при открытии файла, тормозит excel 2013, тормозит excel 2010, почему тормозит excel, зависает excel при копировании, excel зависает при печати, тормозит excel при копировании, завис excel как сохранить файлы, excel зависает при открытии документа, при открытии excel тормозит, почему зависает excel, excel тормозит при открытии файла
Нет похожих записей.
Если стоят виртуальные принтеры? » Например PDF24″ проверьте и установите обновление. Помогло радикально. Win 10 64x Office 16.
да, кстати одна из причин всегда в принтере по умолчанию) спасибо!
Зависает и закрывается Excel, иногда перезагружается и пишет,что была типо аварийная остановка. Зависает когда ввожу числа, с буками и предложениями такого не бывает. Почему так?
сколько весит файл excel?
Спасибо тебе добрый человек, вариант с принтером помог. Два дня бился с глючащим офисом. Ctrl C Ctrl V пары ячеек занимало 15-20 секунд, поменял принтер и все заработало как надо.
Если у вас Windows 10 попробуйте выключить галочки в пункте меню Win+U > Показывать анимацию Windows и т.д.
Далеко не всё тут.
добавлю пару советов:
Эксель очень тупит, когда большая выгрузка обозначена как «таблица».. — не надо так =). особенно, если функционал «таблицы» вам не нужен (просто выгрузка)
Тогда: правой кнопкой по любой ячейке—> выбрать пункт где-то снизу «Таблица» —-> Преобразовать в диапазон..
данное действие часто помогает нерадивым любителям ретузовой раскраски.
2) форматирование. любое.. многие не задумываясь распространяют заливку, условия итд итп на всю строку, на весь столбец итд.. а если там ещё и данные когда-то были — то вообще ахтунг.
жмём CTRL+END — выделится последняя ячейка хранящегося на листе диапазона.. если вы видите, что она очень даааалеко от основного блока данных — удалите все пустые строки и столбцы.. сохраните файл, закройте.. откройте снова и проверьте cntr+end .. где теперь «последняя ячейка» ? . это также поможет уменьшить размер файла.
3) вот вчера столкнулся с одной проблемой. мой нормальный файл вернули мне со славами «не работает» — при копировании листа/ячейки/ страницы Эксель просто вис. . безнадёжно.. вообще. и страшно тупил.
первое — локализовал проблему — нашёл при каком действии зависает.. оказалось при манипуляциях копирования или переноса ячеек конкретного столбца.. дальше дело техники..
оказалось, дело в условном форматировании.. в моём файле было одно правило, распространённое на пару диапазонов, что если меньше нуля значение, то текст определённого цвета..
так вот — после того, как над моим файлом «поработали» (вероятно, протяжка ячеек, копи-пасты итд итп) правила условного форматирования мультиплицировались с каждой строкой всё больше и больше.. получилось, что уже на 400 строке (из 1100) каждая ячейка содержала более 1000(!) правил условного форматирования . одинаковых.. и копирование одной такой ячейки занимало 3 минуты.. не говоря уже про то, что эксель наглухо зависал при копировании чего-то большего..
сами понимаете, что при таком раскладе, даже Копировать—вставить как значение не вариант..
«Очистить форматы» — тоже ДООООЛГО. но форматы очищать не рекомендую — там и раскраска теряется и шрифты.. поэтому есть «Удалить правила» в условном форматировании. . но и это тоже отрабатывало по 2-3 минуты на ячейку (в последних самых тяжёлых ячейках)
пробовал макрос писать — быстрее не получилось..
но потом нашёл более быстрый способ — вставить формат какого-нибудь другого столбца.. видимо алгоритмы как-то по особому в этом случае работают — за 3 минуты всё вставилось. при том что «очистить форматы» (я потом проверял разные методы) заняло бы 2 часа.
вот так.
ну и вообще, в экселе и ворде мноооого разных глюков.. но Microsoft почему-то не исправляет ошибки.. совсем.