Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Userform mit ESC-Taste schliessen

Forumthread: Userform mit ESC-Taste schliessen

Userform mit ESC-Taste schliessen
22.09.2006 10:44:35
eres
Hallo Excel-Freunde,
kann mir jemand einen Tipp geben, wie ich eine aktive Userform mit der ESC-Taste schliessen kann?
Habe zwar auf der UF einen ESC-Button, aber schön wäre es, wenn die UF auch auf die ESC-Taste reagieren würde.
Vielen Dank für Eure Hilfe im voraus.
Gruss
erwin
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform mit ESC-Taste schliessen
22.09.2006 10:58:39
Xelleron
Hallo Erwin,
Einem CommandButton (Unload Userform1) die Eigenschaft Cancel = True zuordnen. Falls du keinen CommandButton hast/willst einfach einen erstellen und soweit verkleiner dass man ihn nicht mehr sieht.
Gruß Dennis
Vielen Dank Dennis (o.T.)
22.09.2006 11:01:08
eres
.
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Userform in Excel mit der ESC-Taste schließen


Schritt-für-Schritt-Anleitung

Um eine Userform in Excel mit der ESC-Taste zu schließen, kannst Du die folgenden Schritte befolgen:

  1. Öffne den Visual Basic-Editor (VBA): Drücke ALT + F11, um den Editor zu öffnen.
  2. Füge eine Userform hinzu: Klicke mit der rechten Maustaste im Projekt-Explorer und wähle Einfügen > Userform.
  3. Füge einen unsichtbaren CommandButton hinzu:
    • Ziehe einen CommandButton auf die Userform.
    • Benenne den Button um (z.B. btnClose) und setze die Eigenschaft Visible auf False.
  4. Füge den folgenden VBA-Code ein:

    Private Sub UserForm_KeyDown(KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
       If KeyCode = vbKeyEscape Then
           Unload Me
       End If
    End Sub
    
    Private Sub UserForm_Initialize()
       Me.KeyPreview = True
    End Sub
  5. Speichere die Userform und teste sie, indem Du die ESC-Taste drückst.

Häufige Fehler und Lösungen

  • Fehler: Die Userform schließt nicht mit der ESC-Taste.

    • Lösung: Stelle sicher, dass die KeyPreview-Eigenschaft der Userform auf True gesetzt ist. Dies ermöglicht der Userform, Tasteneingaben zu empfangen, bevor sie an die Steuerelemente weitergeleitet werden.
  • Fehler: Der unsichtbare CommandButton funktioniert nicht.

    • Lösung: Vergewissere Dich, dass der Button tatsächlich im Code angesprochen wird und die Cancel-Eigenschaft korrekt gesetzt ist, falls Du ihn für andere Zwecke verwendest.

Alternative Methoden

Wenn Du die ESC-Taste nicht für das Schließen der Userform verwenden möchtest, gibt es alternative Methoden:

  • Verwendung von Alt + F4: Dies ist eine universelle Möglichkeit, Fenster zu schließen, funktioniert jedoch möglicherweise nicht immer in einem Excel-VBA-Umfeld.
  • Erstellen eines Schließen-Buttons: Du kannst einen sichtbaren Button auf der Userform platzieren, der beim Klicken die Userform schließt. Füge folgenden Code zum Button hinzu:
    Private Sub btnClose_Click()
       Unload Me
    End Sub

Praktische Beispiele

Hier ist ein praktisches Beispiel, wie Du die ESC-Taste in einer Userform implementieren kannst:

Private Sub UserForm_KeyDown(KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = vbKeyEscape Then
        Unload Me
    End If
End Sub

Private Sub UserForm_Initialize()
    Me.KeyPreview = True
End Sub

In diesem Beispiel wird die Userform sofort geschlossen, wenn die ESC-Taste gedrückt wird. Diese Funktionalität kann in vielen Anwendungen nützlich sein, insbesondere wenn Du eine benutzerfreundliche Oberfläche schaffen möchtest.


Tipps für Profis

  • Verwende die Eigenschaft Cancel: Wenn Du einen CommandButton für das Schließen der Userform verwendest, setze die Eigenschaft Cancel auf True. Dies sorgt dafür, dass die ESC-Taste für diesen Button funktioniert:

    Private Sub btnClose_Click()
      Unload Me
    End Sub
  • Gestalte die Userform übersichtlich: Überlege, wie Du die Schaltflächen und Eingabefelder anordnest, um ein gutes Benutzererlebnis zu gewährleisten.

  • Teste Deine Userform gründlich: Stelle sicher, dass alle Tasten und Schaltflächen wie gewünscht funktionieren, bevor Du sie im produktiven Einsatz verwendest.


FAQ: Häufige Fragen

1. Kann ich die ESC-Taste auch für andere Funktionen verwenden?
Ja, Du kannst die ESC-Taste auch für andere Funktionen verwenden, indem Du die Logik in der UserForm_KeyDown-Prozedur anpasst.

2. Warum reagiert meine Userform nicht auf die ESC-Taste?
Überprüfe, ob die KeyPreview-Eigenschaft der Userform korrekt auf True gesetzt ist und ob der Code in der UserForm_KeyDown-Prozedur richtig implementiert wurde.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige