Report. HasModule-Eigenschaft (Access)Report.HasModule property (Access)

Mit der HasModule-Eigenschaft können Sie angeben oder ermitteln, ob ein Formular oder Bericht ein Klassenmodul besitzt.You can use the HasModule property to specify or determine whether a form or report has a class module. Boolescher Wert mit Lese-/Schreibzugriff.Read/write Boolean.

SyntaxSyntax

Ausdruck. HasModuleexpression.HasModule

Ausdruck Eine Variable, die ein Report -Objekt darstellt.expression A variable that represents a Report object.

BemerkungenRemarks

Die HasModule-Eigenschaft verwendet die folgenden Einstellungen.The HasModule property uses the following settings.

EinstellungSetting Visual BasicVisual Basic BeschreibungDescription
JaYes TrueTrue Das Formular oder der Bericht hat ein Klassenmodul.The form or report has a class module.
NeinNo FalseFalse (Standard) Das Formular oder der Bericht hat kein Klassenmodul.(Default) The form or report doesn't have a class module.

Wenn Sie diese Eigenschaft auf False festlegen, ist es wahrscheinlich, dass das Leistungsverhalten Ihrer Datenbank verbessert und Ihre Datenbank kleiner wird.Setting this property to False can improve the performance and decrease the size of your database.

Die HasModule-Eigenschaft kann nur in der Formularentwurfsansicht oder in der Berichtsentwurfsansicht festgelegt werden, kann aber in allen anderen Ansichten gelesen werden.The HasModule property can be set only in form or report Design view but can be read in any view.

Formulare oder Berichte, deren HasModule -Eigenschaft auf Nein festgelegt ist, werden als Lightweight-Objekte betrachtet.Forms or reports that have the HasModule property set to No are considered lightweight objects. Lightweight-Objekte sind kleiner und werden in der Regel schneller geladen und angezeigt als Objekte mit zugeordneten Klassenmodulen.Lightweight objects are smaller and typically load and display faster than objects with associated class modules. In vielen Fällen muss für ein Formular oder einen Bericht keine Ereignisprozedur verwendet werden, und es ist kein Klassenmodul erforderlich.In many cases, a form or report doesn't need to use event procedures and doesn't require a class module.

Wenn Ihre Anwendung ein Übersichtsformular zum Navigieren zu anderen Formularen verwendet, können Sie anstelle von Befehlsschaltflächen mit Ereignisprozeduren eine Befehlsschaltfläche mit einem Makro oder Hyperlink verwenden.If your application uses a switchboard form to navigate to other forms, instead of using command buttons with event procedures, you can use a command button with a macro or hyperlink. Wenn Sie beispielsweise das Formular Employees über eine Befehlsschaltfläche in einer Übersicht öffnen möchten, können Sie die HyperlinkSubAddress -Eigenschaft des Steuerelements auf Employees festlegen.For example, to open the Employees form from a command button on a switchboard, you can set the control's HyperlinkSubAddress property to Form Employees.

Lightweight-Objekte werden nicht im Objektkatalog angezeigt, und Sie können das Schlüsselwort New nicht verwenden, um eine neue Instanz des Objekts zu erstellen.Lightweight objects don't appear in the Object Browser and you can't use the New keyword to create a new instance of the object. Ein einfaches Formular oder Bericht kann als Unterformular oder Unterbericht verwendet werden und wird in der Formular -oder Berichts Sammlung angezeigt.A lightweight form or report can be used as a subform or subreport and will appear in the Forms or Reports collection. Einfache Objekte unterstützen die Verwendung von Makros und öffentlichen Prozeduren, die in Standardmodulen vorhanden sind, wenn Sie über das Eigenschaftenfenster des Objekts aufgerufen werden.Lightweight objects support the use of macros and public procedures that exist in standard modules when called from the object's property sheet.

Microsoft Access legt die HasModule -Eigenschaft auf true fest, sobald Sie versuchen, ein Objektmodul anzuzeigen, auch wenn dem Modul kein Code tatsächlich hinzugefügt wird.Microsoft Access sets the HasModule property to True as soon as you attempt to view an object's module, even if no code is actually added to the module. Wenn Sie beispielsweise im Menü Ansicht für ein Formular in der Entwurfsansicht Code auswählen, wird Microsoft Access zum Hinzufügen eines Klassenmoduls zum Formular Objekt und zum Festlegen seiner HasModule -Eigenschaft auf trueveranlasst.For example, selecting Code from the View menu for a form in Design view causes Microsoft Access to add a class module to the Form object and set its HasModule property to True. Sie können ein Klassenmodul zu einem Objekt auf die gleiche Weise hinzufügen, indem Sie die HasModule -Eigenschaft im Eigenschaftenfenster eines Objekts auf Ja festlegen.You can add a class module to an object in the same way by setting the HasModule property to Yes in an object's property sheet.

Wenn Sie die HasModule -Eigenschaft mithilfe des Eigenschaftenblatts eines Objekts auf Nein festlegen oder es mithilfe von Visual Basic auf false festlegen, löscht Microsoft Access das Klassenmodul des Objekts und ggf. enthaltenen Code.If you set the HasModule property to No by using an object's property sheet or set it to False by using Visual Basic, Microsoft Access deletes the object's class module and any code it may contain.

Wenn Sie eine Methode des Module -Objekts verwenden oder auf die Module -Eigenschaft für ein Formular oder einen Bericht in der Entwurfsansicht verweisen, erstellt Microsoft Access das zugehörige Modul und legt die HasModule -Eigenschaft des Objekts auf truefest.When you use a method of the Module object or refer to the Module property for a form or report in Design view, Microsoft Access creates the associated module and sets the object's HasModule property to True. Falls Sie während der Laufzeit auf die Module-Eigenschaft eines Formulars oder Berichts verweisen und die HasModule-Eigenschaft des Objekts auf False festgelegt ist, tritt ein Fehler auf.If you refer to the Module property of a form or report at run-time and the object has its HasModule property set to False, an error will occur.

Objekte, die mit einer der Methoden CreateForm oder CreateReport erstellt wurden, sind standardmäßig einfache Objekte.Objects created by using the CreateForm or CreateReport methods are lightweight by default.

Support und FeedbackSupport and feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation?Have questions or feedback about Office VBA or this documentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.