Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Formulare und Berichte per Tastenkombination schlieen

Sie wissen vermutlich, dass man das aktuelle Element einer Office-Anwendung mit der Tastenkombination Strg + F4 schlieen kann. Viele Benutzer tun das aber nicht. Und wenn doch, dann verwechseln Sie diese Tastenkombination vielleicht mit Alt + F4 und schlieen direkt die Anwendung. Access im Unternehmen zeigt, wie Sie eine eigene Schaltflche zum Lschen von Objekten festlegen.

Tastenkombination festlegen

Zum Festlegen von Tastenkombinationen verwendet man ein Makros namens Autokeys. Legen Sie ein solches Makro an und aktivieren Sie ber den Menbefehl Ansicht/Makronamen die Spalte Makroname. Hier tragen Sie die gewnschte Schaltflche ein (in geschweiften Klammern). Legen Sie als Aktion AusfhrenCode fest und tragen Sie fr die Eigenschaft Funktionsname den Wert =ObjektSchliessen() ein.

Diese Funktion enthlt die fr das Schlieen des aktuellen Formulars oder Berichts notwendigen Code. Dieser sieht folgendermaen aus:

Public Function ObjektSchliessen()

    Dim frm As Form

    Dim rpt As Report

    On Error Resume Next

    Set frm = Screen.ActiveForm

    If Err = 0 Then

        If Not frm Is Nothing Then

            DoCmd.Close acForm, frm.Name, acSaveYes

            Exit Function

        End If

    End If

    Err.Clear

    On Error Resume Next

    Set rpt = Screen.ActiveReport

    If Err = 0 Then

        If Not rpt Is Nothing Then

            DoCmd.Close acReport, rpt.Name

        End If

    End If

End Function

Die Routine versucht zunchst, der Objektvariablen das aktuelle Formular zuzuweisen. Wenn derzeit kein Formular aktiv ist, wrde dies einen Fehler auslsen. Das verhindert die On Error Resume Next-Anweisung. Hat die Routine der Objektvariablen frm ein Formular zuweisen knnen, schliet sie das entsprechende Formular. Falls nicht, untersucht die Routine, ob das aktuelle Objekt ein Bericht ist und schliet diesen gegebenenfalls.

Wenn das aktuelle Objekt kein Formular oder Bericht ist, passiert dementsprechend gar nichts.

© 2003-2015 André Minhorst Alle Rechte vorbehalten.