Свойство Form.HasModule (Access)

Используйте свойство HasModule , чтобы указать или определить, содержит ли форма или отчет модуль класса. Для чтения и записи, Boolean.

Синтаксис

expression. HasModule

выражение: переменная, представляющая объект Form.

Замечания

Свойство HasModule использует следующие параметры.

Setting Visual Basic Описание
Да True Форма или отчет содержит модуль класса.
Нет False (по умолчанию) Форма или отчет не имеют модуля класса.

Установка для этого свойства значения False может повысить производительность и уменьшить размер базы данных.

Свойство HasModule можно задать только в режиме конструктора формы или отчета, но его можно считывать в любом представлении.

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

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

Упрощенные объекты не отображаются в обозревателе объектов, и вы не можете использовать ключевое слово New для создания нового экземпляра объекта. Упрощенная форма или отчет можно использовать как подчиненную форму или вложенный отчет и будет отображаться в коллекции Forms или Reports . Упрощенные объекты поддерживают использование макросов и открытых процедур, которые существуют в стандартных модулях при вызове из страницы свойств объекта.

Microsoft Access устанавливает для свойства HasModule значение True , как только вы пытаетесь просмотреть модуль объекта, даже если в модуль фактически не добавляется код. Например, если выбрать Код в меню Вид для формы в режиме конструктора, Access добавит модуль класса в объект Form и присвоит его свойству HasModule значение True. Модуль класса можно добавить в объект таким же образом, задав для свойства HasModule значение Да на странице свойств объекта.

Если для свойства HasModule задано значение Нет с помощью страницы свойств объекта или для свойства False с помощью Visual Basic, Access удаляет модуль класса объекта и любой код, который он может содержать.

Если вы используете метод объекта Module или ссылаетесь на свойство Module для формы или отчета в режиме конструктора, Access создает связанный модуль и задает свойству HasModule объекта значение True. Если вы ссылаетесь на свойство Module формы или отчета во время выполнения, а свойство HasModule объекта имеет значение False, возникнет ошибка.

Объекты, созданные с помощью методов CreateForm или CreateReport , по умолчанию являются упрощенными.

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.