Открыть форму для значения, выбранного в ComboBox - Ms Acces - PullRequest
0 голосов
/ 11 сентября 2018

Я хочу открыть форму для конкретной записи на основе значения, выбранного в поле со списком.Я написал код и он работает, но перед открытием формы он показывает диалоговое окно с полем ввода, запрашивающим параметр, который я хочу для формы, который я не хочу, чтобы VB-код запрашивал.

DoCmd.OpenForm "Final_Exam", acNormal, , "[admclass] = " & Me.Combo4.Value & ""  

Это код, который я написал, и требование состоит в том, чтобы при нажатии на кнопку форма открывалась без какого-либо диалогового окна, запрашивающего параметр.thanksa

1 Ответ

0 голосов
/ 11 сентября 2018

Я обнаружил, что лучший способ открыть одну форму из другой - использовать OpenArgs.При открытии формы 2 с помощью кнопки формы 1 используйте код, подобный следующему:

Private Sub cmdOpenOtherForm_Click()
    DoCmd.OpenForm FormName:="frmOtherForm", OpenArgs:=Me.Combo4.Value
End Sub

Затем в событии Load формы 2 используйте openargs для настройки фильтра:

Private Sub Form_Load()
    If Not IsNull(Me.OpenArgs) Then
        Me.Filter="[admclass]=""" & Me.OpenArgs & """"
        Me.FilterOn = True
    End If
End Sub

Если поле, по которому вы фильтруете, является текстовым полем, убедитесь, что вы правильно экранировали двойные кавычки (как сделано выше).

...