|
![]() |
#1 |
Участник
|
Поячеечное заполнение (в смысле, отдельной командой заполнять каждую ячейку) всегда будет работать относительно медленно. Общая стратегия ускорения вывода - это команды групповой вставки значений. Заполнение многих ячеек одной командой. В идеале, заполнение сразу всех ячеек одной командой. Как правило, это реализуется одним из следующих способов
1. Буфер обмена 2. RecordSet 3. Выгрузка в промежуточные файлы 4. Запрос из макроса Excel напрямую к внешним данным Если же у Вас "работало быстро", а потом вдруг стало "работать медленно" при этом сам код не менялся и объем выгружаемых данных остался примерно тем же, то надо смотреть настройки Excel, а также настройки операционной системы. Может, антивирус криво настроен. Может с правами доступа что-то намудрили. И еще, надеюсь, Вы используете предварительно сформированные шаблоны Excel. Т.е. файлы XLT. Создание отчетов "с нуля" или использование в качестве шаблонов обычных файлов XLS, также существенно замедляет формирование отчетов. |
|
|
За это сообщение автора поблагодарили: Leopold Stotch (1). |
![]() |
#2 |
Участник
|
Цитата:
Сообщение от Владимир Максимов
![]() Если же у Вас "работало быстро", а потом вдруг стало "работать медленно" при этом сам код не менялся и объем выгружаемых данных остался примерно тем же, то надо смотреть настройки Excel, а также настройки операционной системы. Может, антивирус криво настроен. Может с правами доступа что-то намудрили.
И еще, надеюсь, Вы используете предварительно сформированные шаблоны Excel. Т.е. файлы XLT. Создание отчетов "с нуля" или использование в качестве шаблонов обычных файлов XLS, также существенно замедляет формирование отчетов. В итоге покопались в настройках Excel - для листов на которые происходит выгрузка, в случае, если установлен режим просмотра страницы "Разметка страницы" или "Страничный", то выгрузка идет намного медленнее, если же поставить значение "Обычный", то время выгрузки существенно уменьшается. |
|
|
За это сообщение автора поблагодарили: coolibin (1). |
Теги |
excel, export |
|
|