-1

让 MS Access 2007 根据第一个字段中添加的条目自动填写表单的最简单方法是什么?

我目前有 4 个表......客户、零件、订单表头和订单行。我为订单标题表创建了一个表单,其中包含一个用于订单行的子表单。

理想情况下,我想要的是,当我将客户编号添加到订单标题表单中时,它会使用客户姓名和详细信息等自动填充表单的其余部分......

和相同的原理...当我将产品编号添加到订单行表单时,它会自动填写订单 ID 和零件描述以及销售价格,从零件表和订单标题表中获取信息.....

现在我知道对于你们大多数人来说这是面包和黄油,但请以最简单的形式解释......我绝不是100%的计算机知识。

4

1 回答 1

2

这是我使用的表格中的一个示例。它使用同一 .mdb 文件中的表中的 Dlookup。您输入一个零件编号,然后在您点击选项卡后填充其他所有内容:

Private Sub Item_Number_AfterUpdate()
    PopulateFields
End Sub

Private Sub PopulateFields()
''''PopulateFields takes the Item Number to fill in all the remaining fields with regards to that Item
    Me.Full_Desc = RTrim(DLookup("ITEMDESC", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.Item_Type = RTrim(DLookup("ITEMTYPE", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.General_Desc = RTrim(DLookup("ITMGEDSC", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.Current_Cost = RTrim(DLookup("CURRCOST", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.Item_Class_Code = RTrim(DLookup("ITMCLSCD", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
End Sub

更新

要访问应用程序的 VBA 部分,请按 F11 或右键单击要触发代码的控件。右键单击后,选择“构建事件”,然后选择“代码生成器”以打开 VBA 编辑器窗口。 VBA 编辑器

左侧的下拉菜单将为您提供您可以在该表单中选择的每个控件,右侧的下拉菜单将为您提供该控件可用的每个事件。因此,当我的文本框Item_Number被填充并且用户继续前进时,AfterUpdate会触发并运行该功能PopulateFields

您显然需要替换文本框和表名,这只是一种方法。但希望这会有所帮助。

于 2013-08-13T16:37:19.643 回答