在MS Access中更新主表单时更新子表单的相关字段

时间:2018-11-15 10:48:32

标签: vba ms-access

我有一个主表单和一个连续子表单,该子表单使用invoice id, customer name and invoice date连接到主表单。添加新发票时,我选择主表单中的客户,然后在子表单中输入数据,因为我允许在子表单中进行编辑。

现在,如果我以主要形式更改客户,那么客户也应该为已添加的数据更改子表单。但是我的子表单变成空白,当我选择上一个客户时,它会显示输入的数据。

我希望我的子表单客户更新为主表单中的新选择客户。我使用了一些vba代码,但无法正常工作。下面的代码是我从教程中获得的。

Private Sub Customer_Name_AfterUpdate()
With Me.[Sales_Invoice_Detail(its my subform].Form.RecordsetClone
Do Until .EOF
.Edit
!Customer_Name = Me.Customer_Name (This is the Field which i want to update in my subform)
!Invoice_Id = Me.Invoice_Id( it has one to many relationship between forms)
.Update
.MoveNext
Loop
'MsgBox "You Change Customer To " & Customer_Name & "!"
End With
Me.Refresh
End Sub

1 个答案:

答案 0 :(得分:0)

  

使用发票ID连接到主表单的连续子表单,   客户名称和发票日期

从连接(MasterLinkFields / ChildLinkFields)中删除客户名称和发票日期。这些可以直接从父表单中拉出,也可以使用子查询从子表单的源中拉出。