我有一个小但难以捉摸的问题:
在MS Access中,我有一个结果表单。在这张表格上我有一个清单。此列表是基于主表单ID的子选择。如何捕获行更改,以便更新我的列表?
我不是在寻找插入/更新语句!我有他们很好,他们工作正常,但除非每行更新行之前/更新行,否则不要帮助我。
在我的例子中,列表是选定电影的类型。
Private Sub film_name_AfterUpdate()
Dim strNewRecord As String
Dim film_id As Integer
If IsNull(Forms!Films!film_id) Then
GoTo cmdNoRecord_Error
Else:
film_id = Forms!Films!film_id
strNewRecord = "SELECT qry_film_genres.gen_name FROM qry_film_genres " _
& " WHERE film_id = " _
& film_id & " ORDER BY qry_film_genres.gen_name"
Me.Genre_List.RowSource = strNewRecord
End If
Exit Sub
cmdNoRecord_Error:
MsgBox "Please Select a Film."
Exit Sub
End Sub
答案 0 :(得分:0)
您只需要使用film_id Change事件。我假设'film_id'字段位于父窗体上,子窗体是'Genre_List'控件所在的位置。
EG:
Private Sub film_id_Change()
If Not IsNull(Me.film_id) Then
Me.CHILDFORM.Genre_List.RowSource = "SELECT qry_film_genres.gen_name FROM qry_film_genres " _
& " WHERE film_id = " & Me.film_id & " ORDER BY qry_film_genres.gen_name"
End If
End Sub