根据具有多个记录的子表单中的值附加父表单记录

Appending Parent form Record based on Value in Subform with Multiple Records

我有一个追加查询,它在父表单上的按钮的单击事件上运行。

如果子表单中的文本字段满足特定条件,则查询仅附加当前记录。除了仅在第一个子表单记录上评估条件外,查询似乎按预期运行。

如何获取条件来搜索当前所有子表单记录并在满足条件时追加记录?

-家长表格:Primary_frm -子表格:Review_sfrm -正在评估的字段:Review_sfrm.Desc -Table 附加到:Editied_records_tbl

下面的查询(table 和字段名称已更改):

 INSERT INTO Edited_records_tbl
    SELECT Record_number 
    FROM Records_tbl
    WHERE ID =Forms!Primary_frm!Review_sfrm.Form.ID and Forms!Primary_frm!Review_sfrm.Form.Desc = "xxxx";

提前致谢

在 Access 中,一次只为一条记录生成子窗体控件。这意味着您必须遍历子表单以附加所有记录。

您可以在主窗体中使用以下代码。

Dim rs As DAO.Recordset
With Me.Review_sfrm.Form
   DoCmd.SetWarnings False
   Set rs = .RecordsetClone 'Get underlying subform records
   rs.MoveFirst 'Start at first record
   Do Until rs.EOF 'Until last record
       .Bookmark = rs.Bookmark 'Navigate to current record
       DoCmd.OpenQuery "MyQuery"
       rs.MoveNext 'Next record
    Loop
End With
DoCmd.SetWarnings True