如何解决将数据从子表单传递到子表单在 MS Access 中无法正常工作
我有一个主表单 (frmpurchases) 和一个子表单 (subfrmpurchases)。子表单上的字段 UPC 是一个包含 2 列的组合框,一个是数字(产品 ID),另一个是文本。我有一个 Not-In-List 事件来打开一个单独的表单来添加新产品。输入产品详细信息后,将执行以下代码行。
Private Sub Command4_Click()
On Error GoTo errline
If IsFormloaded("frmpurchases") = True Then
Forms!frmpurchases!subfrmpurchases.Form!UPC.Undo
Forms!frmpurchases!subfrmpurchases.Form!UPC.Requery
Forms!frmpurchases!subfrmpurchases.Form!UPC = Me.UPC
DoCmd.Close acForm,"ADDPRODUCT",acSaveYes
Forms!frmpurchases!subfrmpurchases.Form!Quantity.SetFocus
Else
DoCmd.Close acForm,acSaveYes
End If
errline:
Exit Sub
End Sub
发生了什么:
-产品添加成功
-在子表单字段 UPC 上,产品在那里(因为我已经设置了它,因此您不能移动到子表单中的新记录而将该字段留空),但组合框显示为空白。
-在 subfrmpurchases 的记录源(采购表)中,产品 ID 与在 subfrmpurchases 中输入的所有数据一起显示。
编辑:好的,所以我想通了。我忘了提到组合框 UPC 没有以正常方式填充数据。我使用一个类来调用行源,所以我需要引用类中的方法来重新查询组合框。
解决方法
您应该设置组合框绑定值(产品 ID),而不是显示的文本 (UPC)。所以:
Forms!frmPurchases!subfrmPurchases.Form!UPC.Value = Me!ProductID.Value
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。