Ускорение настройки свойств .Pagesetup.XXXX s - PullRequest
0 голосов
/ 25 сентября 2019

Это дополнительный вопрос к этому .

Как утверждают мои исследования и опыт работы с моим кодом, установка свойств PAGESETUP чрезвычайно медленная.Исследование показало 3 способа решения этой проблемы:

  1. Используйте встроенный макрос VBA 4 для настройки pagesetup
  2. Ограничьте свойства, чтобы установить
  3. Изменяйте свойство только еслиэто требует изменения

Итак, помня об этом, я изменил все свойства набора страниц, которые были записаны в макросе, с

.property = ""

на

IF .property <> "" OR NOT (.property = Empty) Then .property = ""

ЧтоЯ заметил, что первый прогон кода требует значительного времени.Последующий прогон кода, который он пропускает через мгновение, кажется.

Другая вещь, которую я нашел, была

Application.PrintCommunication = False

Должно быть похоже на временное отключение обновления экрана.

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

Если перед вызовом подпрограмм необходимо настроить Printcommunications следующим образом:

Application.PrintCommunication = False

For CounterX = LBound(SheetsToPrint) To UBound(SheetsToPrint)
    setPrintArea ThisWorkbook.Worksheets(SheetsToPrint(CounterX))
    SetupPage ThisWorkbook.Worksheets(SheetsToPrint(CounterX))
Next CounterX

Application.PrintCommunication = True

Или значение связи должно быть установлено в каждом из сабов setPrintArea и SetupPage?

Какие-либо другие предложения по ускорению печати?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...