0

好的,所以我遇到了这种情况,我需要动态打开一个表单,请参见下面的代码,并且如果可能的话,为该表单执行一个已知方法。

打开表格方法:

Public Sub ShowForm(par As Form, nm As String)
    DoCmd.OpenForm nm

    While IsOpen(nm)
        DoEvents
    Wend

End Sub

警告:

并非所有表格都有相同的方法。所以如果可能的话,添加一个额外的可选参数来传递方法调用,可能是一个字符串值。

一些例子:

表格1:

public sub InitItem(id as string)
 ....
end sub

表格2:

public sub InitCategory(id as string)
 ....
end sub
4

1 回答 1

1

发疯了怎么办?

Private Sub Form_Open(Cancel As Integer)
    Cancel = Not BuildForm(Me.Name, True)
End Sub


Function BuildForm(strFormName, blnRS, Optional strParent = "None", _
                Optional strSubname = "", Optional strParentS = "", _
                Optional NameMod = "", _
                Optional strFormReport = "Form") As Boolean

OpenArgs,一些注释

If Me.OpenArgs & "" = "" Then
    Cancel = True
    Exit Sub
End If

astrOpenArgs = Split(Me.OpenArgs, ",")
于 2012-08-30T18:18:26.270 回答