在Access中将值从一种形式传递到另一种形式

时间:2015-06-03 20:46:49

标签: vba ms-access access-vba ms-access-2010

我有一个带有组合框的弹出窗体,可以让你从我的一个表的主键中选择一个值。

在我选择一个值后,我希望弹出窗体关闭,并打开另一个窗体,使用我在第一个窗体中选择的观察来填充第二个窗体。

除了关闭第一个弹出窗体外,此代码执行我想要的所有操作:

Private sub ID_AfterUpdate()
Dim id as String
id=Me.ComboBox
DoCmd.OpenForm "Part II",,,,,,id
end sub

此代码执行我想要的操作,但它没有关闭弹出窗体,所以我尝试了:

Private sub ID_AfterUpdate()
Dim id as String
id=Me.ComboBox
DoCmd.Close
DoCmd.OpenForm "Part II",,,,,,id
end sub

但现在它根本不起作用。我只是得到了#34;对象不支持这个属性或方法"。 我也尝试过:

Private sub ID_AfterUpdate()
Dim id as String
id=Me.ComboBox
DoCmd.OpenForm "Part II",,,,,,id
DoCmd.Close    
end sub

但这根本不起作用,不会打开第二张表格或关闭第一张表格。

1 个答案:

答案 0 :(得分:1)

OpenForm之后,执行DoCmd.Close acForm, Me.Name以关闭当前表单---代码模块包含 ID_AfterUpdate 过程的表单。

Private Sub ID_AfterUpdate()
    Dim id As String
    id = Me.ComboBox
    DoCmd.OpenForm "Part II", , , , , , id
    DoCmd.Close acForm, Me.Name
End Sub