VBA - Как предотвратить выполнение кода при переключении между представлениями отчетов - PullRequest
0 голосов
/ 19 февраля 2019

Я использую отчет как шаблон для похожих проектов.У меня есть код форматирования, когда он открывается.Проблема в том, что код выполняется при переключении в режим предварительного просмотра.Некоторое форматирование кода не допускается в этом представлении.

Я решил проблему, поместив невидимое текстовое поле с именем "txtFormatted" в мой отчет.Мой код заполняет его, после завершения форматирования, "True".Модуль не будет работать, пока текстовое поле имеет это значение.

Но это решение кажется небрежным.Что делают люди, чтобы код выполнялся при открытии отчета, но не запускался снова при перелистывании представлений?

1 Ответ

0 голосов
/ 20 февраля 2019

Вместо текстового поля, используйте личную переменную (приватную для отчета) в верхней части модуля кода отчета:

Option Compare Database
Option Explicit

Private IsFormatted As Boolean

Это будет Ложь при открытии отчета,Затем установите значение True , как сейчас, и проверьте эту переменную перед запуском кода форматирования.

...