Forum Discussion
Open Form acDialog
Hello Experts,
I have the below code firing on my main form.
When the main form opens, the other forms in teh code open if Dcount>0.
I have noticed that the forms open all at once and not one at a time.
I want 1 form to open then click close then the next form opens...not all at once.
I thought that WindowMode:=acDialog is what I need?
thank you
Private Sub Form_Load()
If DCount("*", "qryNotifications") > 0 Then
DoCmd.OpenForm "frmNotifications", WindowMode:=acDialog
End If
If DCount("*", "qryNotificationsDateChecks") > 0 Then
DoCmd.OpenForm "frmNotificationsDateCheck", acFormDS, WindowMode:=acDialog
End If
If DCount("*", "qryNotificationsLC") > 0 Then
DoCmd.OpenForm "frmNotificationsLC", WindowMode:=acDialog
End If
End Sub
actually there are Errors in your code!
did you disable error checking?
see your sample:
DoCmd.OpenForm "frmNotifications", WindowMode:=acDialog
did you noticed what is wrong?
if not then, here you define WindowMode:=acDialog, but, did you define the FormName?
should be:
DoCmd.OpenForm FormName:="frmNotifications", WindowMode:=acDialogfor the acFormDS form:
DoCmd.OpenForm FormName:="frmNotificationsDateCheck", View:=acFormDS, WindowMode:=acDialog
do it with the rest of your code.
- George_HepworthSilver Contributor
How about putting each succeeding Form open event on the close event of the previous form?
- Tony2021Steel Contributorthat is a good idea. I didnt think of that. I would prefer to have all the code in the main form though.
- George_HepworthSilver ContributorAgreed, but sometimes plan B works when plan A, which would be more elegant doesn't.
I will take a look tomorrow, but I'm not confident you can control the opening of the downstream forms that way, although I agree that opening a form with the dialog mode is supposed to suspend processing of subsequent.
- arnel_gpSteel Contributor
actually there are Errors in your code!
did you disable error checking?
see your sample:
DoCmd.OpenForm "frmNotifications", WindowMode:=acDialog
did you noticed what is wrong?
if not then, here you define WindowMode:=acDialog, but, did you define the FormName?
should be:
DoCmd.OpenForm FormName:="frmNotifications", WindowMode:=acDialogfor the acFormDS form:
DoCmd.OpenForm FormName:="frmNotificationsDateCheck", View:=acFormDS, WindowMode:=acDialog
do it with the rest of your code.- Tony2021Steel ContributorArnel, that did it. Perfect. thank you again for the help!