如何在VBA Access中创建全局函数并将变量传递给它?



在我的程序中,我试图通过将重复代码放入全局函数中来减少重复的代码。

在我当前的设置中,我调用的函数如下:

Call [Global variable].Close

(全局变量是类模块的名称(。

这个函数看起来像;

Public Function Close()
DoCmd.Close
Cancel = True
End Function

不幸的是,这不会正确编译。我做错了什么??(另外,我还想将变量传入和传出此函数,并想知道这将如何完成(。

感谢您的帮助。

如果您使用的是类模块,则需要该模块的实例,然后才能调用其成员。这需要创建预先声明的类模块(涉及导出代码、在记事本中编辑和重新导入(,或者使用New关键字创建实例:

Dim myClassInstance As MyClass
Set myClassInstance = New MyClass
myClassInstance.Close

但是,根据您的用例,最好在标准模块中提供该函数 - 然后您可以从任何地方调用它,包括从查询中调用它。

最新更新