Compartir a través de


Propiedad Report.HasModule (Access)

Use la propiedad HasModule para especificar o determinar si un formulario o informe tiene un módulo de clase. Boolean de lectura y escritura.

Sintaxis

expresión. HasModule

Expresión Variable que representa un objeto Report .

Comentarios

La propiedad HasModule puede tener los valores siguientes:

Configuración Visual Basic Descripción
True El formulario o el informe tiene un módulo de clase.
No False (Valor predeterminado). El formulario o el informe no tiene un módulo de clase.

Al establecer esta propiedad en False, se puede mejorar el rendimiento y reducir el tamaño de la base de datos.

La propiedad HasModule puede establecerse sólo en el formulario o la vista Diseño del informe, pero puede leerse en cualquier vista.

Formularios o informes que tienen la propiedad HasModule establecida en No se consideran objetos sin código. Los objetos sin código son más pequeños y normalmente se cargan y se muestran más rápido que los objetos con módulos de clase asociados. En muchos casos, un formulario o un informe no necesita usar procedimientos de evento ni requiere un módulo de clase.

Si la aplicación usa un formulario de panel de control para navegar a otros formularios, en lugar de usar botones de comando con los procedimientos de evento, puede usar un botón de comando con una macro o un hipervínculo. Por ejemplo, para abrir el formulario Empleados desde un botón de comando en un panel de control, puede establecer la propiedad HyperlinkSubAddress del control en Form Employees.

Los objetos no aparecen en el Explorador de objetos y no puede utilizar la palabra clave New para crear una nueva instancia del objeto. Un ligero formulario o informe puede utilizarse como un subformulario o subinforme y aparecerá en la colección de formularios o informes. Los objetos ligeros admiten el uso de macros y procedimientos públicos que existen en módulos estándar cuando se llama desde la hoja de propiedades del objeto.

Microsoft Access establece la propiedad HasModule en True en cuanto se intenta ver el módulo de un objeto, incluso si no se agrega código al módulo. Por ejemplo, la selección de código desde el menú de vista de un formulario en la vista Diseño hace que Microsoft Access agregar un módulo de clase al objeto Form y establece su propiedad HasModule en True. Puede agregar un módulo de clase a un objeto de la misma forma estableciendo la propiedad HasModule en Sí en la hoja de propiedades de un objeto.

Si se establece la propiedad HasModule en No mediante la hoja de propiedades de un objeto o se establece en False mediante Visual Basic, Microsoft Access elimina el módulo de clase del objeto y cualquier código que pueda contener.

Cuando se utiliza un método del objeto Module o hacer referencia a la propiedad Module de un formulario o informe en la vista Diseño, Microsoft Access crea el módulo asociado y establece la propiedad HasModule del objeto en True. Si hace referencia a la propiedad Module de un formulario o informe en tiempo de ejecución y el objeto tiene su propiedad HasModule establecida en False, se producirá un error.

Los objetos creados mediante el uso CreateForm o CreateReport métodos son ligeros de forma predeterminada.

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.