【问题标题】:Populate fields in main form from record in subform从子表单中的记录填充主表单中的字段
【发布时间】:2023-03-07 10:47:01
【问题描述】:

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

Public Sub Form_Click

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

End Sub

我不确定这是否是执行我想要的正确代码。子表单和主表单中的字段名称都是[Amendment]。

提前感谢您的帮助!

霍华德

【问题讨论】:

    标签: ms-access vba ms-access-2016


    【解决方案1】:

    这听起来从头到尾。主表单/子表单的正常使用是在主表单上浏览您的记录,对于每个主记录,子表单将显示所有相关的子记录。您听起来好像总是在子表单中显示子表中的所有记录,并且当您浏览这些记录时,您希望主表单中的信息发生变化。

    如果这确实是您想要做的,并且假设这些是绑定表单,那么您需要确保主表单和子表单之间没有链接(在子表单属性上清除条目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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-18
      • 1970-01-01
      相关资源
      最近更新 更多