Почему долго сохраняется файл excel
Перейти к содержимому

Почему долго сохраняется файл excel

  • автор:

Некоторые файлы Excel медленно работают при наличии источников данных

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

Такая проблема может возникнуть, если в файле Excel содержится больше чем 3000 стилей ячеек. Вы можете узнать количество стилей ячеек, выполнив следующую команду VBA в Окне интерпретации :

Подробные инструкции для выполнения такой проверки:

  1. Нажмите Alt + F11 , чтобы открыть редактор VBA.
  2. Перейдите в Окно интерпретации . Если его не видно, то нажмите Вид → Окно интерпретации .
  3. Введите следующую команду и нажмите ВВОД
    print Activeworkbook.Styles.Count

Решение: Очистите проблемные рабочие книги

  • Скопируйте листы в новую рабочую книгу
  • Выберите все листы в рабочей книге, удерживая SHIFT и нажав на первый и последний лист
  • Нажмите на выборку правой кнопкой мыши: Переместить или скопировать… → В книгу: (новую книгу) , и установите флажок Создать копию → OK
  • Сохраните новую рабочую книгу под другим названием

В Office 2007 и 2010 при копировании листа в новую рабочую книгу происходит копирование всех неиспользуемых стилей ячеек. Для предотвращения такого поведения, сперва активируйте следующее исправление:

Если ваша версия Office полностью обновлена, то это исправление, скорее всего, уже установлено. Тем не менее, вам необходимо активировать это исправление либо применив решение Fix it , предоставляемого Microsoft, либо добавив данные в реестр, следуя инструкциям в следующих статьях Microsoft:

  • Microsoft Office 2007: KB2553085
  • Microsoft Office 2010: KB2598127, которое было выпущено в рамках обновления Office 2010 от апреля 2012 г.

Если активация исправления не дала результата, примените обновление, описанное в разделе Решение упомянутых выше статей Microsoft.

Используйте средство очистки, рекомендуемое Microsoft в статье KB213904. Запустите XLStyles Tool, нажмите кнопку Получить файл Excel , установите флажок Сделать все стили ячеек «Обычными» , затем нажмите кнопку Обработать файл . Открыв в Excel очищенный файл, сохраните его под другим названием.

Откройте редактор VBA, нажав Alt + F11 . Выберите рабочую книгу и нажмите кнопку Вставка → Модуль . Затем вставьте один из следующих макросов и запустите его, нажав F5 : Макрос DeleteCustomStyles() из рабочей книги удалит все пользовательские стили ячеек.

Sub DeleteCustomStyles() Dim st As Style Dim i, i_cust As Long i_cust = 0 For i = (ActiveWorkbook.Styles.Count) To 1 Step -1 With ActiveWorkbook.Styles(i) If .BuiltIn = False Then On Error Resume Next .Locked = False On Error GoTo 0 If Not .Locked Then .Delete i_cust = i_cust + 1 End If End If End With If (i Mod 100) = 0 Then Debug.Print i Next MsgBox "Styles deleted: " & i_cust & " styles" & Chr(13) & "Styles left: " & ActiveWorkbook.Styles.Count End Sub

Макрос Remove_Styles() удалит из рабочей книги только неиспользуемые пользовательские стили ячеек. Он похож на макрос, приведенный выше, однако, на его выполнение может уйти очень много времени. Макрос был предоставлен командой поддержки Microsoft Office.

Option Explicit Dim st_array() As String Dim i_x As Long Sub Remove_Styles() Dim stname As String Dim ustname As String Dim uc As Range Dim retval As Boolean Dim ust As Style Dim sh As Worksheet i_x = 0 For Each sh In ActiveWorkbook.Worksheets For Each uc In sh.UsedRange stname = uc.Style.Name retval = Check_Array(stname) If retval = False Then ReDim Preserve st_array(i_x) st_array(i_x) = stname i_x = i_x + 1 End If Next uc Next sh For Each ust In ActiveWorkbook.Styles If ust.BuiltIn = False Then ustname = ust.Name retval = Delete_Styles(ustname) On Error Resume Next If retval = True Then ust.Delete On Error GoTo 0 End If Next ust End Sub Function Delete_Styles(stylename As String) As Boolean Delete_Styles = True Dim i_y As Long For i_y = 0 To i_x - 1 If st_array(i_y) = stylename Then Delete_Styles = False Next i_y End Function Function Check_Array(stylename As String) As Boolean Check_Array = False Dim i_y As Long For i_y = 0 To i_x - 1 If st_array(i_y) = stylename Then Check_Array = True Next i_y End Function

Лучшим решением в таком случае будет — предотвратить вставку неиспользуемых стилей ячеек, но для этого Microsoft необходимо исправить программную ошибку в Excel 2007 и более поздних версиях. Компания Microsoft не предоставила исправление, так как на текущий момент считает, что ошибка не вызывает достаточно значимых последствий для бизнеса. Если у вашей компании есть контракт на поддержку Microsoft Office и вы хотите обратиться в Microsoft за исправлением, вы можете указать номер обращения Microsoft 113012810172527.

Пояснение

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

Почему долго сохраняется файл excel

Отчет сохраняется по 40 минут а формируется за 1 минуту. Строк конечно много около 3500 строи 5 столбцов. Подскажите что можно сделать!

баян. в поиск.телепатов здесь нет
моксель помоему называется утилита. посмотрите ее.
убери автовысоту строк
(4) Ага. Оно самое.)

// (4)+: может пригодится кому.
Процедура ОбработкаЯчейкиТаблицы(Расшифровка, ФСО, Таблица, ТабАдрес) Экспорт
Перем тЗнач,тТхт,тФайл,тКаталог,тТабДок,тКонвертор,тКнига;
// вот єтот кусок позволит в какую-нито ячейку (например серенькую такую с текстом «сохр.в EXCEL») запихнуть
// расшифровку, представляющую из себя СЗ, в котором есть значение «*» (или сразу имя сохраняемого EXCEL-файла) с
// представлением «Сохранить в этот EXCEL-файл!» — выбирать имя EXCEL-файла и сохранять в него отчет во-первых
// быстро, а во-вторых корректно (а то моксель при дефолтном сохранении иногда корячит числа), а в-третьих,
// при повторном тырке в такую ячейку в качестве EXCEL-файла для выбора «вспоминается» ранее выбранный файл
// сам всунул в глобальник один раз и с тех пор не парюсь.
Если ТипЗначенияСтр(Расшифровка)=»СписокЗначений» Тогда
тЗнач=Расшифровка.Получить(«Сохранить в этот EXCEL-файл!»);
Если (ТипЗначенияСтр(тЗнач)=»Строка»)И(ПустоеЗначение(тЗнач)=0) Тогда
тФайл=СтрЗаменить(тЗнач,»*»,»»); тКаталог=»»; ФСО=Найти(тФайл,»\»);
Пока ФСО>0 Цикл тКаталог=тКаталог+Лев(тФайл,ФСО); тФайл=Сред(ФСО,ФСО+1); ФСО=Найти(тФайл,»\»); КонецЦикла;
Если ПустоеЗначение(тКаталог)=1 Тогда тКаталог=КаталогПользователя() КонецЕсли; ФСО=0;
Если ФС.ВыбратьФайл(1,тФайл,тКаталог,»XLS-файл (Книга EXCEL) для сохранения (экспорта) отчета:»,
«XLS-файлы|*.xls»,»xls»,177)=0 Тогда
тТхт=»XLS-Файл для сохранения не выбран — СОХРАНЕНИЕ НЕ ВЫПОЛНЕНО. «;
Сообщить(тТхт,»!!»); Предупреждение(тТхт,11); Возврат;
КонецЕсли;
тФайл=тКаталог+тФайл;
Пока ФС.СуществуетФайл(тФайл)=1 Цикл
тТхт=»[«+тФайл+»] уже существует»;
Если Вопрос(тТхт+» — ПЕРЕЗАПИСАТЬ. «,»Да+Нет+Отмена»,11)<>«Да» Тогда
тТхт=тТхт+» — СОХРАНЕНИЕ НЕ ВЫПОЛНЕНО. «;
Сообщить(тТхт,»!!»); Предупреждение(тТхт,11); Возврат;
Иначе ФС.УдалитьФайл(тФайл) КонецЕсли;
КонецЦикла;
тТабДок=СоздатьОбъект(«ТабличныйДокумент»); тТабДок.ЗагрузитьИзТаблицы(Таблица);
тКонвертор=СоздатьОбъект(«КонвертерExcel»); тКнига=тКонвертор.Создать();
тКнига.ПараметрыКонвертера.РаспознаватьЧисловыеЗначения=1;
тКнига.Листы.Добавить(«Таблица из 1с»,тТабДок); тКнига.Записать(тФайл);
тТабДок=»»; тКнига=»»; тКонвертор=»»;
тЗнач=СоздатьОбъект(«СписокЗначений»); Расшифровка.Выгрузить(тЗнач);
тЗнач.Установить(«Сохранить в этот EXCEL-файл!»,тФайл);
Таблица.Область(ТабАдрес).Расшифровка(тЗнач); Возврат;
КонецЕсли;
КонецЕсли;
// а тут всё остальное.
КонецПроцедуры //ОбработкаЯчейкиТаблицы

(6)+: у меня вообще-то этот кусок допилен до возможности добавлять таблцу в выбранную книгу на новый лист или заменой существующего листа. но этот шаг падаван должен сделать сам. 🙂

НАРОД Спасибо ОГРОМНОЕ за отклики на мою проблему, очень приятно что помогаете. сейчас буду пробывать, а результатах напишу))

Устранение неполадок, связанных с сохранением изменений в Excel

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

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

Следующая информация может помочь вам определить возможные причины этой проблемы и предлагает решения для ее устранения.

Возможные причины, по которым документы не сохраняются

Выберите интересующую вас вкладку или перейдите в раздел «Быстрое разрешение».

  • Надстройки сторонних разработчиков
  • Разрешения
  • Документ не сохранен
  • Место на диске
  • Антивирусное ПО
  • Общий доступ к файлам
  • Имя файла

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

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

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

  1. Закройте программу Excel.
  2. Нажмите Пуск и выберите пункт Программы.
  3. При запуске Excel нажмите и удерживайте клавишу Ctrl до тех пор, пока не появится следующее сообщение: Excel обнаружил, что вы удерживали нажатой клавишу CTRL. Вы хотите запустить Excel в безопасном режиме?
  4. Выберите Да.
  5. Откройте новую книгу Excel и постарайтесь сохранить ее. Если это помогло, попробуйте еще раз сохранить проблемный файл.

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

Для получения дополнительных сведений о безопасном режиме Microsoft Excel, нажмите в Excel клавишу F1, чтобы перейти в меню «Справка». Введите запрос безопасный режим в поле поиска, а затем нажмите кнопку Поиск, чтобы просмотреть нужные сведения.

Дополнительные сведения о том, как определить папки, которые Excel использует при запуске, и дополнительные параметры для отключения этой функции, см. в следующих статьях:

  • Используйте папки запуска в Excel
  • Предотвращение автоматического открытия файлов в Excel

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

  • Разрешение на чтение
  • Разрешение на запись
  • Разрешение на изменение
  • Разрешения на удаление

Не удается получить доступ к имени файла документа только

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

  • Вы открываете существующий файл, а затем пытаетесь сохранить его.
  • Вы сохраняете файл на внешнем или сетевом диске, и происходит сбой подключения.

При отсутствии указанных разрешений процесс сохранения в Excel не может быть завершен.

Отобразится одно из следующих сообщений об ошибке:

  • Документ не сохранен
  • Документ сохранен неполностью
  • Документ не сохранен. Все ранее сохраненные копии были удалены.
  • Документ не сохранен.

«Документ не сохранен» или «Документ сохранен неполностью»

При попытке создать временный файл процесс был прерван, возможно, по одной из следующих причин:

  • Была нажата клавиша ESC
  • Аппаратный сбой
  • Программный сбой
  • Проблема, связанная с носителем

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

Попробуйте сохранить файл на альтернативном диске.

Любые изменения, внесенные в последнюю версию, будут утеряны.

«Документ не сохранен. Все сохраненные ранее копии были удалены» или «Документ не сохранен»

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

В этом случае исходный файл удаляется (хотя временный файл может быть доступен для чтения). Если на компьютере или рабочей станции произошел сбой, используйте временный файл. Если прерывание произошло по иной причине, то версия файла с текущими изменениями по-прежнему открыта в памяти. Сохраните файл на альтернативном диске.

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

Дополнительные сведения об этом сообщении об ошибке см. в следующих статьях:

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

Чтобы проверить, не конфликтует ли установленное антивирусное ПО с Excel, временно отключите его, затем попробуйте сохранить файл в Excel.

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

Для получения дополнительной информации об этом сообщении об ошибке см. Разблокировать файл, который был заблокирован для редактирования.

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

Недопустимое имя файла.

Процесс сохранения файла

Когда приложение Excel сохраняет файл, оно делает это в соответствии с описанной ниже процедурой.

  1. В целевой папке, указанной в диалоговом окне Сохранить как, Excel создает временный файл со случайным именем (например, Cedd4100 без расширения имени файла). В этот временный файл записывается вся книга.
  2. Если сохраняются изменения существующего файла, Excel удаляет исходный файл.
  3. Excel изменяет имя временного файла, присваивая ему имя, указанное в диалоговом окне Сохранить как (например, Book1.xls).

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

Быстрое разрешение проблемы

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

Сохранение книги с новым именем файла

  1. В меню Файл выберите команду Сохранить как.
  2. Сохранение книги с уникальным именем

Перемещение исходных листов в новую книгу

  1. Добавьте лист заполнителя в книгу, Для этого нажмите Shift+F11.
  2. Сгруппируйте все листы (кроме фильтра). Для этого щелкните первый лист и, нажав и удерживая клавишу Shift, щелкните последний лист.
  3. Щелкните сгруппированные листы правой кнопкой мыши и выберите команду Переместить или скопировать.
  4. В списке В книгу выберите пункт (Новая книга).
  5. Нажмите OK.

Сохранение файла в другом формате Excel

  1. В меню Файл выберите команду Сохранить как.
  2. В списке Тип файла выберите формат файла, отличный от текущего. Если используется приложение Microsoft Excel 2007 или более поздней версии, сохраните файл в формате XLSX или XLSM вместо XLS.

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

Попробуйте сохранить записную книжку в другом месте, например, на локальном жестком диске, сетевом диске или съемном диске.

Попробуйте сохранить новую книгу в исходном месте

  1. Создайте книгу Excel.
  2. В меню Файл выберите команду Сохранить как.
  3. В диалоговом окне Сохранить как выполните указанные ниже действия.
    1. В поле Папка выберите папку, в которой хранится исходная книга.
    2. В поле Имя файла введите имя для нового файла.
    3. Выберите Сохранить.

    Попробуйте сохранить книгу в безопасном режиме

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

    Дополнительные ресурсы

    Чтобы избежать проблем с сохранением документов должным образом, мы рекомендуем включить автосохранение. Дополнительные сведения см. в разделе Что такое автосохранение?

    Если при использовании Excel у вас возникли определенные проблемы, перейдите на следующий веб-сайт, чтобы найти более подробную информацию о версии вашей программы:

    Подробный обзор параметров

    В следующем разделе приводится более подробное описание этих вариантов.

    Проблемы при сохранении книги Microsoft Excel могут возникнуть, если выполняются какие-либо из указанных ниже условий.

    • Пользователь пытается сохранить книгу Excel на сетевом диске при отсутствии необходимых для этого разрешений.
    • Вы пытаетесь сохранить книгу Excel на диске с недостаточным объемом свободного места.
    • Утрачено соединение с книгой Excel.
    • Имеется конфликт с антивирусной программой.
    • Предпринимается попытка сохранить общую книгу Excel.
    • При сохранении книги Excel превышено ограничение на длину пути (218 знаков).

    Обходные пути для сохранения книг Excel

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

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

    Вариант 1. Сохранение книги с новым именем

    1. В меню Файл выберите команду Сохранить как.
    2. Сохранение книги с уникальным именем

    Вариант 2. Перемещение исходных листов в новую книгу

    1. Добавьте лист заполнителя в книгу, Для этого нажмите Shift+F11.

    Примечание. Этот лист требуется потому, что после перемещения всех необходимых листов данных в книге должен остаться хотя бы один лист.

    Примечание. В результате этих действий активные (сгруппированные) листы должны переместиться в новую книгу.

    Если в книге содержатся макросы VBA, скопируйте модули в новую книгу.

    Вариант 3. Сохранение файла в другом формате Excel

    1. В меню Файл выберите команду Сохранить как.
    2. В списке Тип файла выберите формат файла, отличный от текущего. Если используется приложение Microsoft Excel 2007 или более поздней версии, сохраните файл в формате XLSX или XLSM вместо XLS.

    Вариант 4. Попробуйте сохранить книгу в другое место

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

    • Конфликт с антивирусной программой
    • Отсутствие необходимых разрешений
    • Чрезмерная длина имени файла
    • Конфликт общего доступа к файлу

    Вариант 5. Попробуйте сохранить новую книгу в исходное место.

    Чтобы сохранить новый файл Excel в первоначальном месте, выполните следующие действия:

    1. Создайте книгу Excel.
    2. В меню Файл выберите команду Сохранить как.
    3. В диалоговом окне Сохранить как выполните указанные ниже действия.
      1. В поле Папка щелкните папку, в которой хранится исходная книга.
      2. В поле Имя файла введите имя для нового файла.
      3. Выберите Сохранить.

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

      • Чрезмерная длина имени файла
      • Конфликт общего доступа к файлу

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

      • Нехватка свободного места на диске

      Если на диске достаточно свободного места, попробуйте способ 3.

      Вариант 6. Попробуйте сохранить книгу в безопасном режиме

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

      Примечания.

      • Если для сохранения книги используется сетевая папка, перезагрузите Windows в безопасном режиме с поддержкой сети и попытайтесь сохранить книгу еще раз.
      • Для устранения неполадок в Microsoft Excel 2010 и более поздних версиях нельзя использовать безопасный режим Windows.

      Дополнительные сведения о запуске Windows в безопасном режиме см. Расширенные параметры запуска (включая безопасный режим).

      Если книга сохраняется после перезагрузки Windows в безопасном режиме, попытайтесь сохранить файл еще раз. Для этого выберите в меню Файл пункт Сохранить.

      Если книга не сохраняется после перезагрузки Windows в безопасном режиме, проблема может быть вызвана указанными ниже причинами:

      • Использование надстроек сторонних компаний
      • Конфликт с антивирусной программой
      • Отсутствие необходимых разрешений
      • Чрезмерная длина имени файла

      Дополнительная информация

      Требуется дополнительная помощь? Зайдите на сайт сообщества Майкрософт.

      Почему долго сохраняется файл excel

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

      Есть документ с данными на листе 1, которые нужно отфильтровать по сотне критериев, сохранив отдельно результаты применения каждого фильтра.
      Результаты фильтрации Листа 1 документа excel представлены на Листе 3.
      Там же на Листе 3 присутствует кнопка «Сохранить лист в отдельный файл», которой назначен макрос (см. скрин).
      И вот это сохранение «вешает» мне систему на несколько минут.

      Оно бы и не было столь печально, но подобных действий нужно произвести под сотню. Ежедневно.
      Все остальные «тормоза» ликвидированы, а с этим никак не справиться.
      Написал мне этот макрос бывший коллега, который и так уже в участии ко мне превзошел всякие пределы. При том, что он очень занятой человек. Снова его беспокоить уже просто неприлично.

      Всё работает прекрасно, только ОЧЕНЬ ДОЛГО СОХРАНЯЕТСЯ. Невозможно долго.

      Я проверила всё, что может влиять на скорость работы excel, кроме этого макроса. Даже установила excel 2010 вместо 2007. Связей нет, совместного доступа нет. Насколько я понимаю, нет никаких других причин зависания при сохранении, кроме работы самого макроса. Ну, тут уж мне ума катастрофически не хватает понять, что и как ускорить.

      Привожу скрин кода в VBA. Это, насколько я понимаю, кусочек кода, «ответственный» за сохранение листа в файл.
      На скрине не видно, но выше в коде указан диапазон копируемых с Листа1 на Лист3 ячеек — «A3:Q3000». Строк бывает разное количество. Даже по одной иногда. А иногда под три тысячи, что и указано.

      И, вот, эти ячейки (только значения) и нужно сохранить в отдельный файл. Нажимаю на кнопку, запускающую макрос. Выбираю папку для сохранения.
      И тут и «зависаю» на 2-7-10 минут.

      Изначально в коде вместо ActiveSheet Save As. Было ActiveWorkbook. Это я поменяла. Не знаю, правильно или нет. Предполагала, что сохранять лист excel будет быстрее, чем книгу.Но каких-то изменений в скорости работы не заметила.

      Я в VBA впервые пытаюсь что-то редактировать. Не ругайтесь сильно, если какую-то фигню спрашиваю/делаю.
      В общем, что нужно сделать, чтобы сохранять данные быстрее?

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

      Есть документ с данными на листе 1, которые нужно отфильтровать по сотне критериев, сохранив отдельно результаты применения каждого фильтра.
      Результаты фильтрации Листа 1 документа excel представлены на Листе 3.
      Там же на Листе 3 присутствует кнопка «Сохранить лист в отдельный файл», которой назначен макрос (см. скрин).
      И вот это сохранение «вешает» мне систему на несколько минут.

      Оно бы и не было столь печально, но подобных действий нужно произвести под сотню. Ежедневно.
      Все остальные «тормоза» ликвидированы, а с этим никак не справиться.
      Написал мне этот макрос бывший коллега, который и так уже в участии ко мне превзошел всякие пределы. При том, что он очень занятой человек. Снова его беспокоить уже просто неприлично.

      Всё работает прекрасно, только ОЧЕНЬ ДОЛГО СОХРАНЯЕТСЯ. Невозможно долго.

      Я проверила всё, что может влиять на скорость работы excel, кроме этого макроса. Даже установила excel 2010 вместо 2007. Связей нет, совместного доступа нет. Насколько я понимаю, нет никаких других причин зависания при сохранении, кроме работы самого макроса. Ну, тут уж мне ума катастрофически не хватает понять, что и как ускорить.

      Привожу скрин кода в VBA. Это, насколько я понимаю, кусочек кода, «ответственный» за сохранение листа в файл.
      На скрине не видно, но выше в коде указан диапазон копируемых с Листа1 на Лист3 ячеек — «A3:Q3000». Строк бывает разное количество. Даже по одной иногда. А иногда под три тысячи, что и указано.

      И, вот, эти ячейки (только значения) и нужно сохранить в отдельный файл. Нажимаю на кнопку, запускающую макрос. Выбираю папку для сохранения.
      И тут и «зависаю» на 2-7-10 минут.

      Изначально в коде вместо ActiveSheet Save As. Было ActiveWorkbook. Это я поменяла. Не знаю, правильно или нет. Предполагала, что сохранять лист excel будет быстрее, чем книгу.Но каких-то изменений в скорости работы не заметила.

      Я в VBA впервые пытаюсь что-то редактировать. Не ругайтесь сильно, если какую-то фигню спрашиваю/делаю.
      В общем, что нужно сделать, чтобы сохранять данные быстрее? natalyzal

      К сообщению приложен файл: 1470575.png (117.4 Kb)
      Сообщение отредактировал natalyzal — Среда, 29.03.2017, 17:22

      Сообщение Помогите, пожалуйста, с очередной проблемой. Точнее проблема из прежних, но простыми средствами она не решена.
      Пришлось залезать в дебри, которые мой измученный мозг воспринимает с большим трудом.

      Есть документ с данными на листе 1, которые нужно отфильтровать по сотне критериев, сохранив отдельно результаты применения каждого фильтра.
      Результаты фильтрации Листа 1 документа excel представлены на Листе 3.
      Там же на Листе 3 присутствует кнопка «Сохранить лист в отдельный файл», которой назначен макрос (см. скрин).
      И вот это сохранение «вешает» мне систему на несколько минут.

      Оно бы и не было столь печально, но подобных действий нужно произвести под сотню. Ежедневно.
      Все остальные «тормоза» ликвидированы, а с этим никак не справиться.
      Написал мне этот макрос бывший коллега, который и так уже в участии ко мне превзошел всякие пределы. При том, что он очень занятой человек. Снова его беспокоить уже просто неприлично.

      Всё работает прекрасно, только ОЧЕНЬ ДОЛГО СОХРАНЯЕТСЯ. Невозможно долго.

      Я проверила всё, что может влиять на скорость работы excel, кроме этого макроса. Даже установила excel 2010 вместо 2007. Связей нет, совместного доступа нет. Насколько я понимаю, нет никаких других причин зависания при сохранении, кроме работы самого макроса. Ну, тут уж мне ума катастрофически не хватает понять, что и как ускорить.

      Привожу скрин кода в VBA. Это, насколько я понимаю, кусочек кода, «ответственный» за сохранение листа в файл.
      На скрине не видно, но выше в коде указан диапазон копируемых с Листа1 на Лист3 ячеек — «A3:Q3000». Строк бывает разное количество. Даже по одной иногда. А иногда под три тысячи, что и указано.

      И, вот, эти ячейки (только значения) и нужно сохранить в отдельный файл. Нажимаю на кнопку, запускающую макрос. Выбираю папку для сохранения.
      И тут и «зависаю» на 2-7-10 минут.

      Изначально в коде вместо ActiveSheet Save As. Было ActiveWorkbook. Это я поменяла. Не знаю, правильно или нет. Предполагала, что сохранять лист excel будет быстрее, чем книгу.Но каких-то изменений в скорости работы не заметила.

      Я в VBA впервые пытаюсь что-то редактировать. Не ругайтесь сильно, если какую-то фигню спрашиваю/делаю.
      В общем, что нужно сделать, чтобы сохранять данные быстрее? Автор — natalyzal
      Дата добавления — 29.03.2017 в 17:21

      Группа: Проверенные
      Ранг: Ветеран
      Сообщений: 980
      Замечаний: 0% ±

      Excel 2007, Excel 2013

      natalyzal, ругать Вас сейчас будут модераторы. Читаем Правила, исправляем.
      Без файла (даже маленького кусочка), трудно будет понять, что там так долго.

      natalyzal, ругать Вас сейчас будут модераторы. Читаем Правила, исправляем.
      Без файла (даже маленького кусочка), трудно будет понять, что там так долго. Roman777

      Много чего не знаю.

      Сообщение отредактировал Roman777 — Среда, 29.03.2017, 20:46

      Сообщение natalyzal, ругать Вас сейчас будут модераторы. Читаем Правила, исправляем.
      Без файла (даже маленького кусочка), трудно будет понять, что там так долго. Автор — Roman777
      Дата добавления — 29.03.2017 в 20:45

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *