自动填充Access表单上的字段

时间:2013-08-13 15:30:48

标签: ms-access ms-access-2007

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

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

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

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

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

1 个答案:

答案 0 :(得分: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 Editor

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

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