Supportnet / Forum / Datenbanken
Fensterstatus abfragen
Frage
Hallo Forum,
ich benötige mal wieder Hilfe. Wie kann ich in Access mit VBA abfragen, ob ein bestimmtes Formular geöffnet ist oder nicht.
Hintergrund ist der, dass ich ein Formular X von zwei verschiedenen anderen Formularen, Y oder Z, aufrufe (über DoCmd.OpenForm). Wenn ich X schliesse, möchte ich nun, dass eine bestimmte Sub-Routine nur dann ausgeführt wird, wenn X aus Y geöffnet wurde aber nicht aus Z.
Gruss,
grubie
Antwort 1 von OmaDuck
Hallo,
Du könntest jeweils im Formular Y oder Z in eine globale Variable schreiben wo Du dich befindest. Dann kannst du in X abfragen wo Du hergekommen bist
Gruß
OmaDuck
Du könntest jeweils im Formular Y oder Z in eine globale Variable schreiben wo Du dich befindest. Dann kannst du in X abfragen wo Du hergekommen bist
Gruß
OmaDuck
Antwort 2 von Marie
Ab Acess 2000 gibt es die Eigenschaft IsLoaded.
Also bitte Accessversion angeben künftig bei Fragen
In früheren Versionen mit syscmd:
Public Function IsFormularOpened(StrFormName As String) As Boolean
IsFormularOpened = (SysCmd(acSysCmdGetObjectState, acForm, StrFormName) > 0)
End Function
liefert true oder false
Also bitte Accessversion angeben künftig bei Fragen
In früheren Versionen mit syscmd:
Public Function IsFormularOpened(StrFormName As String) As Boolean
IsFormularOpened = (SysCmd(acSysCmdGetObjectState, acForm, StrFormName) > 0)
End Function
liefert true oder false
Antwort 3 von grubie
OmaDuck, Marie,
vielen Dank für eure Hilfe. Ich habe die Lösung von Marie implementiert und das funktioniert perfekt.
Gruss,
Grubie
vielen Dank für eure Hilfe. Ich habe die Lösung von Marie implementiert und das funktioniert perfekt.
Gruss,
Grubie