从子窗体中的记录填充主窗体中的字段

问题描述:

在Access 2016中,我有一个主窗体ClientInfoForm,它包含子窗体EditTransactions_subform。该子表单位于数据表视图中。当用户单击子窗体中的记录时,我想填充主窗体中的字段。在窗体的Click事件,我目前有:从子窗体中的记录填充主窗体中的字段

Public Sub Form_Click 

Forms![ClientInfoForm]![Amendment] = Forms![ClientInfoForm]![EditTransactions_subform].Form![Amendment] 

End Sub 

我不知道这是否是执行我想什么是正确的代码。该字段的名称是子表单和主窗体中的[修订]。

在此先感谢您的帮助!

Howard

这听起来很贴切。主窗体/子窗体的正常使用是浏览主窗体上的记录,并且对于每个主记录,子窗体将显示所有相关的子记录。您听起来好像您总是在子表格中显示全部您的记录,并且在您浏览这些时希望主表单中的信息发生变化。

如果这真的是你想要做的,并且假设这些是绑定表单,那么你需要确保主表单和子表单之间没有关联(在子表单属性上清除条目从Link Child FieldsLink Master Fields)。在子表格的On Current事件中,您可以尝试类似下面的内容(尽管它完全未经测试):

Dim rst As Recordset 

Set rst = Me.Parent.RecordsetClone 
rst.FindFirst "Amendment = '" & [Amendment] & "'" 'assumes [Amendment] is String, otherwise lose the surrounding quotes 
Me.Parent.Bookmark = rst.Bookmark 

rst.Close 
Set rst = Nothing