1

我正在尝试将多个表绑定在一起,并在名为 Form2 的表单中根据我的组合框(ID 名称 = CbproductName)选择有一个子表单显示数据。我正在使用女士办公室访问。

这是查询

SELECT Employee.EmpName, Employee.EmpCode, Employee.CompanyID, Employee.DeptID,
       Employee.ComputerID, Software.ProductName 
  FROM Software
       INNER JOIN (
             (
              Computer INNER JOIN Employee ON Computer.CompID = Employee.ComputerID) 
              INNER JOIN Application ON Computer.ComputerName=Application.[A-ComputerID]
             )
       ON Software.ID = Application.SoftwareID 
 WHERE Application.SoftwareID = Form2.CbProductName;

但是,当我运行表单时,它一直提示我输入参数值,并且它不显示输入值的结果。它也不会根据组合框的选择而改变。有人可以指点我完成它的方向吗?

4

1 回答 1

2

在查询中,按名称引用表单作为Forms集合的成员。然后使用控件名称引用该窗体上的控件的值。它应该看起来像这样的模式:

Forms!FormName!ControlName

在您的查询中,将Where子句更改为:

WHERE Application.SoftwareID = Forms!Form2!CbProductName;

然后确保在更新事件之后刷新该查询CbProductName。您指示查询用作子表单的记录源,因此假设子表单控件与组合框位于同一表单上,请尝试将此作为更新后的过程:

Private Sub CbProductName_AfterUpdate()
    Me!SubformControlName.Form.Requery
End Sub

请注意,子表单控件名称可能与其包含的表单名称不同。确保使用控件的名称。

于 2012-12-05T08:31:17.640 回答