VBA-Programmierung in Microsoft Excel

Tutorial: Die Dialoge

QueryClose-Ereignis

Tritt ein, bevor eine UserForm geschlossen wird.

Syntax

Private Sub UserForm_QueryClose(Cancel As Integer, closemode As Integer)

Die Syntax des QueryClose-Ereignisses besteht aus folgenden Teilen:

Teil Beschreibung
Cancel Eine Ganzzahl. Das Festlegen dieses Arguments auf einen Wert ungleich 0 beendet das QueryClose-Ereignis in allen geladenen Benutzerformularen und verhindert, daß die UserForm und die Anwendung geschlossen werden.
closemode Ein Wert oder eine Konstante, der/die den Grund für das QueryClose-Ereignis angibt.

Rückgabewerte

Das Argument closemode gibt folgende Werte zurück:

Konstante Wert Beschreibung
vbFormControlMenu 0 Der Benutzer hat auf der UserForm im Systemmenü den Befehl Schließen gewählt.
VbFormCode 1 Die Unload-Anweisung wird durch Code aufgerufen.
VbAppWindows 2 Die aktuelle Windows-Betriebsumgebungssitzung wird beendet.
VbAppTaskManager 3 Die Anwendung wird vom Windows-Task-Manager geschlossen.

Diese Konstanten werden in der Objektkatalog im Objektkatalog von Visual Basic für Applikationen aufgelistet. Beachten Sie, daß vbFormMDIForm ebenfalls im Objektkatalog angegeben ist, aber noch nicht unterstützt wird.

Bemerkungen

Mit diesem Ereignis wird normalerweise sichergestellt, daß die in einer Anwendung enthaltenen Benutzerformularen keine nichtbeendeten Operationen enthalten, wenn diese Anwendung geschlossen wird. Wenn ein Benutzer z.B. neue Daten noch nicht in einer UserForm gespeichert hat, kann die Anwendung den Benutzer auffordern, die Daten zu speichern.

Wenn eine Anwendung geschlossen wird, können Sie die QueryClose-Ereignisprozedur verwenden, um die Cancel-Eigenschaft auf den Wert True festzulegen, wodurch der Schließvorgang gestoppt wird.