Задача
У меня есть сложная форма поиска, которую мне нужно открыть несколько раз (одновременно), чтобы позволить пользователям выполнять несколько поисков одновременно. Я нашел возможность открыть экземпляр формы (как это класс), используя:
Option Compare Database
Option Explicit
'Array to hold Form Instances
Private MyFormCollection(1 To 4) As Form_frmTest
Private Sub cmd_CloneMe_Click()
Dim intCounter As Integer
For intCounter = 1 To 4
Set MyFormCollection(intCounter) = New Form_frmTest
MyFormCollection(intCounter).Caption = "Form #" & intCounter
MyFormCollection(intCounter).Visible = True
Next intCounter
Forms!frmTest.SetFocus
End Sub
Это пример открытия нескольких экземпляров формы, а не того, что я буду использовать для окончательного кода, поскольку мне нужно будет открывать только одно мгновение за клик, НО, скорее всего, другие уже открыты!
НО я не могу найти путь к одному из этих дубликатов в качестве acDialog (поэтому вызов функции приостанавливается до тех пор, пока вы не скроете или не закроете новую диалоговую форму). Вот способ, которым я обычно открывал бы нормальную форму (не копию):
Call DoCmd.OpenForm("SomeForm", acNormal, , , , acDialog)
Вопрос
Как открыть новый экземпляр формы в виде диалогового окна (поэтому вызов функции приостанавливается до тех пор, пока новая форма не будет закрыта или скрыта)?
Спасибо