我开始为我办公室的各个部门开发用户界面,以支持查看和编辑客户记录。
我有一个导航表单,每个标签都是数据库中的一个单独的表。一个是客户特定信息,如SSN,名/姓等。下一个是地址,以下是联系信息,订单等。
第一种形式是他们选择客户的地方。以下所有表格将取决于他们在此选择的人。我需要能够保留第一个表单中的Record ID
,因为它们在其他地方导航。目前,每次失去焦点时,表单都会重置。
有没有办法启用此功能?以下表格将根据他们在第一对中选择的内容进行过滤。
答案 0 :(得分:0)
将Record ID
存储在表单的标记属性中。
然后:
.OpenArgs
属性。 .Parent.Tag
属性获取它。用户选择记录:
Me.Tag = Me![Record ID]
打开新表格:
'Open form
DoCmd.OpenForm "frmName", acNormal, , , acFormPropertySettings, acWindowNormal, Me.Tag
'Filter Form
Private Sub Form_Load()
With Me
If Not IsNull(.OpenArgs) Then
.Filter = "[Record ID]=" & .OpenArgs
.FilterOn = True
End If
End With
End Sub
加载子表单:
'Filter Form
Private Sub Form_Load()
With Me
If Not IsNull(.Parent.Tag) Then
.Filter = "[Record ID]=" & .Parent.Tag
.FilterOn = True
End If
End With
End Sub
最后,如果在表单之间导航,请将其存储在每个表单的标记属性中。
答案 1 :(得分:0)
虽然未使用导航表单实现,但有关同步子表单的文章和完整演示如下: