Run 方法

expandtri全部显示

使用 Run 方法可以执行一个特定的 Microsoft Access 或用户定义的 FunctionSub 过程。Variant 型。

expression.Run(Procedure, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14, Arg15, Arg16, Arg17, Arg18, Arg19, Arg20, Arg21, Arg22, Arg23, Arg24, Arg25, Arg26, Arg27, Arg28, Arg29, Arg30)

expression    必需。返回“应用于”列表中的一个对象的表达式。

Procedure     必需 String 型。要运行的 FunctionSub 过程的名称。如果要调用其他数据库中的过程,请使用以圆点分隔项目名称和过程名称的形式:“projectname   .procedurename”。如果在类库数据库中执行包含 Run 方法的 Visual Basic 代码,Microsoft Access 首先在类库数据库中查找过程,然后在当前数据库中查找。

Arg1     可选 Variant 型。

Arg2     可选 Variant 型。

Arg3     可选 Variant 型。

Arg4     可选 Variant 型。

Arg5     可选 Variant 型。

Arg6     可选 Variant 型。

Arg7     可选 Variant 型。

Arg8     可选 Variant 型。

Arg9     可选 Variant 型。

Arg10     可选 Variant 型。

Arg11     可选 Variant 型。

Arg12     可选 Variant 型。

Arg13     可选 Variant 型。

Arg14     可选 Variant 型。

Arg15     可选 Variant 型。

Arg16     可选 Variant 型。

Arg17     可选 Variant 型。

Arg18     可选 Variant 型。

Arg19     可选 Variant 型。

Arg20     可选 Variant 型。

Arg21     可选 Variant 型。

Arg22     可选 Variant 型。

Arg23     可选 Variant 型。

Arg24     可选 Variant 型。

Arg25     可选 Variant 型。

Arg26     可选 Variant 型。

Arg27     可选 Variant 型。

Arg28     可选 Variant 型。

Arg29     可选 Variant 型。

Arg30     可选 Variant 型。

说明

当从其他应用程序中通过“自动化”(以前称为 OLE 自动化)控制 Microsoft Access 时,该方法很有用。例如,可以从 ActiveX 组件中使用 Run 方法来执行一个在某 Microsoft Access 数据库中定义过的 Sub 过程。

可以从任何其他 ActiveX 组件中设置一个对 Microsoft Access 类型库的引用,然后,在代码中使用这个库中定义的对象、方法和属性。但不能在任何非 Microsoft Access 应用程序中设置对单个 Microsoft Access 数据库的引用。

例如,假设已经在数据库中定义过一个名为 NewForm 的过程,该数据库的 ProjectName 属性设为“WizCode”。这个 NewForm 过程需要一个字符串参数。则可以从 Visual Basic 中用下面的方式调用 NewForm:

Dim appAccess As New Access.Application

appAccess.OpenCurrentDatabase ("C:\My Documents\WizCode.mdb")

appAccess.Run "WizCode.NewForm", "Some String"

如果在不同的数据库中存在名称相同的另一个过程,那么像以上示例所显示的那样,使用存在于所需过程中的数据库名称,以使 procedure 参数符合标准。

也可以使用 Run 方法来调用一个过程,而此过程存在于一个对 Microsoft Access 数据库的引用数据库中。

示例

下面的示例从用作 Active X 组件的另一个应用程序中,运行一个存在于 Microsoft Access 数据库模块中的用户定义的 Sub 过程。

若要试用该示例,请先创建一个名为 WizCode.mdb 的新数据库,并将其 ProjectName 属性设为 WizCode。在这个数据库中打开一个新的模块并输入下列代码。保存这个模块,然后关闭数据库。

注释  通过从 VBE 主菜单中选择“工具”、“WizCode 属性...”可以设置 ProjectName

Public Sub Greeting(ByVal strName As String)

    MsgBox ("Hello, " & strName & "!"), vbInformation, "Greetings"

End Sub

完成该步骤后,就可以从 Microsoft Excel 或 Microsoft Visual Basic 中运行下列代码。请确定已经添加了对 Microsoft Access 类型库的引用(该引用可以通过单击“工具”菜单中的“引用”,然后在“引用”对话框中选择 Microsoft Access 10.0 Object Library 来获得)。

Private Sub RunAccessSub()

    Dim appAccess As Access.Application

    ' Create instance of Access Application object.

    Set appAccess = CreateObject("Access.Application")

    ' Open WizCode database in Microsoft Access window.

    appAccess.OpenCurrentDatabase "C:\My Documents\WizCode.mdb", False

    ' Run Sub procedure.

    appAccess.Run "Greeting", "Joe"

    Set appAccess = Nothing

End Sub