如何通过当前打开的数据库上的Excel VBA运行访问宏



我正在设置一个运行访问数据库宏的VBA代码。我开始的代码如下:

Sub import()
Dim appAccess As Object
Set appAccess = CreateObject("Access.Application")
Call appAccess.OpenCurrentDatabase("database link")
appAccess.UserControl = True
appAccess.DoCmd.RunMacro "Macro name"
End Sub

在这种情况下,数据库被打开并运行宏,但我只需要宏即可在已经打开的数据库上运行。

谢谢

来自代码模块您可以简单地

DoCmd.RunMacro "Macro name"    

将在当前数据库中执行

如果您想从另一个应用程序(例如Excel(执行此操作,则可以

Dim accApp As Access.Application
Set accApp = GetObject(, "Access.Application")

但是您应该检查

accApp.CurrentDb.Name

确保您正在查看正确的数据库

(话虽如此,如果您想在数据库中操纵数据,则使用ADO或DAO可以做得更好。

最新更新