2014-01-14 17 views
5

Ich versuche ein Makro zu erstellen, das das aktuelle Formular schließt und das Hauptformular öffnet.Schließen Sie das aktuelle Formular und öffnen Sie ein anderes in Access?

Da ich so viele Formulare habe und ich brauche die gleiche Schaltfläche mit diesem Makro in allen, ich möchte ein Makro nur einmal und nicht für jedes Formular separat erstellen.

Gibt es eine Möglichkeit, dies zu tun?

+0

Es ist schwer zu visualisieren, was Sie zu tun versuchen. Können Sie ein Beispiel geben oder besser erklären, was Sie erreichen möchten? –

Antwort

11

ein Codemodul erstellen und fügen Sie die folgende Funktion:

Public Sub CloseMeAndOpenMain(frmMe As Form) 
    DoCmd.Close acForm, frmMe.Name 
    DoCmd.OpenForm "frmMain" 'Replace this with the actual name of your Main form 
End Sub 

nun jedes Mal, wenn Sie auf eine Schaltfläche, die das aktuelle Formular schließen und öffnen Sie die „frmMain“ Form, würden Sie die Click-Ereignishandler schreiben wie folgt:

Private Sub btnCloseForm_Click() 
    CloseMeAndOpenMain Me 
End Sub 

Me ist ein Hinweis auf die aktuelle Form, und jede Form eine Name Eigenschaft. Daher können Sie eine Funktion schreiben, um sie zu schließen, ohne den Namen als String fest codieren zu müssen (außer natürlich für das Hauptformular).

Verwandte Themen