我有一个更新例程,涉及在夜间运行的各种不同的过程。这些过程都存储在excel文件中,该文件使用命令行按所需顺序调用它们。
现在我需要添加要包含的Access数据库文件。我可以打开Access数据库和我想要的文件,但仅限于" Read only"模式。它也不会识别我正在调用的宏。
我的命令行如下所示:
MSACCESS.EXE /ro "W:\Mandate.accdb" /x AutoRunProcess
问题1:如何在常规模式下打开访问文件?我已经对该主题进行了一些研究,并查看了微软文档,但未找到有关如何打开数据库的信息,可以运行更新并再次保存。提供的示例仅用于打开"只读"模式source。
问题2:找不到宏虽然我当前的代码打开了正确的访问数据库文件,但它说它无法找到宏。但是,如果我手动启动它,宏运行正常。
任何指示或帮助表示赞赏。
答案 0 :(得分:1)
问题1:
要不以只读方式打开数据库,不要指定/ro
开关。 :)
问题2:
一般建议是尽可能避免使用宏。通常,数据库应具有一个宏,即AutoExec
。
虽然通过快速测试,/ x开关对我有用,即使数据库有AutoExec
宏。首先运行AutoExec
,然后运行/ x宏。
另一种选择是/cmd
开关。您使用Command()
函数传递在AutoExec函数中读取的字符串。
Select Case Command()
Case "AutoRunProcess": Call MyProcess
Case "SomethingElse": Call AnotherFunction
Case "": ' nothing was passed in /cmd
Case Else: MsgBox "Error in command-line: " & Command()
End Select