|
|
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
выкидываю в эксель отчет из программы - данные выкидываются моментально, а вот "наведение красоты" идет долго. отрисовываю толстую рамку и внутренние линии, задаю область печати - около минуты на 20 листов (строк по 100 на листе), в другом отчете еще формирую заголовки (объединение ячеек, размер шрифта, цвет фона, толстая рамка вокруг)(всего 1 лист) так заголовок вообще жутко долго отрисовывается, как бы нехотя, прям анимация получается, минуты 1,5 ждать в чем может быть проблема? может что в настройках экселя покрутить? зы. макросы примитивные, сделаны через "запись макроса", офис 2007 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 17:14 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
Попробуй на время выполнения кода отключить отрисовку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 17:47 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
Akina, а как это делается? кстати во время выполнения эксель у меня невидимый ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 11:29 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
Application.ScreenUpdating = False ... Application.ScreenUpdating = True ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 11:34 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
Можете еще временно отключить вычисления: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 11:38 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
vikttur, формул у меня нет совсем, просто для печати и сохранения выкидываю, или рассчет чего нибудь все равно идет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 11:54 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
Вставьте, проверьте время до и после. Вдруг у Вас там чего-нибудь прокралось? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 12:02 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
включил и то и то - никакой разницы... может сам эксель тупит - на другом компе, послабее, выводится быстрее, версия экселя таже, но ставили с другого дистр ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 12:12 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
Форматирование - медленная штука. Ускорить можно копируя форматы с листа-шаблона. И подготовка к печати очень тормозная. Там важно из макроса(после рекордера) повыбрасывать все ненужное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 12:24 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
iskatelsqlвключил и то и то - никакой разницы... может сам эксель тупит - на другом компе, послабее, выводится быстрее , версия экселя таже, но ставили с другого дистр Похоже на проверку антивирусом. Я бы включил диспетчер задач на время выполнения и посмотрел какие процессы занимают память и процессор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 17:21 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
mds_world, антивирус не жрет проц, только сам эксель 5-10 % и почемуто "диспетчер очереди печати" 8-17% как отрисовка заканчивается, диспетчер тоже жрать перестает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2011, 18:05 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
1) может, вы всё-таки первой строкой кода не отключили перерисовку экрана? Application.ScreenUpdating = False 2) одно и то же форматирование для 20 листов? Если да - зачем делать оформление макросом? Можно же один раз вручную подготовить лист-шаблон со всем нужным форматированием, и потом вставлять данные на копии листа-шаблона. 3) покажите код (а лучше выложите пример файла с кодом) Что-то всё-таки там лишнее - может, вы ячейки в цикле перебираете, когда можно применить метод к целому диапазону одной строкой кода. 4) "макросы примитивные, сделаны через "запись макроса", офис 2007" вот в этом и проблема Убираем все Select и Activate - код начинает работать в 100 раз быстрее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2011, 05:39 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
EducatedFool1) может, вы всё-таки первой строкой кода не отключили перерисовку экрана? Application.ScreenUpdating = False хм, в амнезии вроде не замечен EducatedFool2) одно и то же форматирование для 20 листов? Если да - зачем делать оформление макросом? Можно же один раз вручную подготовить лист-шаблон со всем нужным форматированием, и потом вставлять данные на копии листа-шаблона. так делаю шапку, а рамку / область печати / сетку отрисовываю потом в зависимости от колва строк., и заголовки разделов тоже т.к. могут в разное место быть воткнуты EducatedFool3) покажите код (а лучше выложите пример файла с кодом) Что-то всё-таки там лишнее - может, вы ячейки в цикле перебираете, когда можно применить метод к целому диапазону одной строкой кода. ну до применения к диапазону я догадался :) ну вот тебе пример Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ЗЫ. если выполнять это из макроса в экселе то скорость таже ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2011, 11:00 |
|
||
|
отчего медленно выполняется макрос? (форматирование)
|
|||
|---|---|---|---|
|
#18+
> Автор: iskatelsql > worksheet.OlePropertyGet("PageSetup").OlePropertySet("PrintArea",tmp.OlePropertyGet("address")) ; > worksheet.OlePropertyGet("PageSetup").OlePropertySet("PrintTitleRows", "$1:$4"); > ЗЫ. если выполнять это из макроса в экселе то скорость таже С какого-то лешего, недавно начала тормозить генерация Ексельного файлика, который запихивался в БД и пользователям даже не показывался. После разбора полётов выяснилось, что зависало все именно при настройке печати. Убрали настройки печати и снова наступила благодать :) Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2011, 11:26 |
|
||
|
|

start [/forum/topic.php?fid=61&gotonew=1&tid=2176445]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
149ms |
get topic data: |
7ms |
get first new msg: |
4ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 450ms |

| 0 / 0 |
