将变量传递到打开的表单

问题描述 投票:0回答:1

我想将变量传递给另一个用 OpenForm 打开的表单。 我的表单打开事件似乎没有被调用。 也许我没有正确地提到它。 第一个子例程中的打印语句是正确的,但 Debug.Print“A” 从未发生。 另外,一旦这个变量被传递到新表单,我如何在 SQL 语句中使用它?

Private Sub DataObjectsWhereUsed_Click()
    Dim dataId As String
    dataId = Me.DataObjectsList.Column(2)
    Debug.Print dataId
    DoCmd.OpenForm FormName:="ProcessByDataObject", OpenArgs:=dataId
End Sub

Public Sub ProcessByDataObject_Open()
    Dim dataObject As Variant
    Debug.Print "A"
    If Not IsNull(Me.OpenArgs) Then
        dataObject.Value = Me.OpenArgs
    End If
    
End Sub
vba ms-access
1个回答
0
投票

您的

Public Sub ProcessByDataObject_Open()
从未被呼叫过。

使用

ProcessByDataObject
表单的 Form_Open 事件:

Private Sub Form_Open(Cancel As Integer)

    Dim dataObject As Variant

    Debug.Print "A"
    If Not IsNull(Me.OpenArgs) Then
        dataObject.Value = Me.OpenArgs
    End If
    
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.