1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Problemstellung:

Wie kann ich alle geöffneten Formulare mit einem Mal schließen?

Public Sub CloseAllForms()
    Dim frm As AccessObject, db As Object
    Set db = Application.CurrentProject
       
    For Each frm In db.AllForms
        If frm.IsLoaded = True Then
            DoCmd.Close acForm, frm.Name, acSaveYes
        End If
    Next frm
End Sub

Einfach Prozedur aufrufen und alle geöffneten Formulare werden geschlossen.

Aufruf:

Call CloseAllForms

Es gibt noch eine weitere Möglichkeit nur bestimmte Formulare zuschließen über die Tag-Eigenschaft.
z.B.  sollen alle Formulare geschlossen werden die in der Tag-Eigenschaft ein "X" haben.
Dann sähe der Code so aus:

Public Sub CloseAllForms2(sTag As String)
    Dim frm As AccessObject, db As Object
    Dim frmSet As Form
   
    Set db = Application.CurrentProject
       
    For Each frm In db.AllForms
        If frm.IsLoaded = True Then
            Set frmSet = Forms(frm.Name)
            If frmSet.Tag = sTag Then DoCmd.Close acForm, frm.Name, acSaveYes
        End If
    Next frm
End Sub

Aufruf:

Call CloseAllForms2("X")

Ähnliche Artikel

Kommentar schreiben

Sicherheitscode
Aktualisieren

Login Form

1.png1.png9.png8.png5.png9.png3.png
Heute47
Gestern110
Diese Woche585
Dieser Monat2247
Total1198593

  • IP: 54.224.60.122
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

3
Online

21. Juli 2018

Letzte Kommentare

  • Trusted Locations Manager

    Tommy Admin 13.07.2018 13:06
    RE: Trusted Locations Manager
    Hallo Matthias, aus Ermangelung einer 64bit Version kann ich das leider nicht prüfen. Tut mir leid. Gruss ...

    Weiterlesen...

     
  • Trusted Locations Manager

    Matthias 13.07.2018 06:48
    Funktioniert nicht
    Habe gerade den TL-Manager installiert. Nach dem Start sagt er mir, dass es kein Office erkennen ...

    Weiterlesen...