从命令行运行Access但未加载它?

时间:2015-06-16 20:16:14

标签: ms-access ms-access-2010

我想从命令行启动MS Access宏(它是从另一个工具运行)来生成输出。事情是,如果它可以通过加载它的界面来阻止访问,我更喜欢它。我只想让它运行宏并关闭。有关如何做到这一点的任何想法?

到目前为止,我使用过类似的命令行:

"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS" "S:\filepath\Database\database.accdb" /x Macro1

1 个答案:

答案 0 :(得分:0)

您可以使用VBScript中的COM自动化来创建Access应用程序实例,将其从视图中隐藏,运行宏,然后关闭Access。

我将以下脚本保存为 RunAccessMacro.vbs ,然后在命令提示符窗口中使用此命令作为命令行运行...

cscript //NoLogo C:\share\vbscript\RunAccessMacro.vbs

这是 RunAccessMacro.vbs ...

Option Explicit

Const cstrDbFile = "C:\share\Access\database1.mdb"
Dim accessApp

Set accessApp = CreateObject("Access.Application")
accessApp.Visible = False
accessApp.OpenCurrentDataBase cstrDbFile, False ' open shared
accessApp.DoCmd.RunMacro "Macro1"
accessApp.Quit
Set accessApp = Nothing