我正在尝试从Python运行宏。当从Access本身执行该宏时,它工作正常,但我尝试使用以下Python代码(从How to run a MS Access macro from python容易地被盗)执行此操作:
<div v-for="(items, title) in response" :key="title">
<b>{{ title }}</b>
<div v-for="item in items" :key="item.id">
{{ item.item }}
</div>
</div>
不幸的是,执行倒数第二行(from win32com.client import Dispatch
access_obj = Dispatch("Access.Application")
access_obj.Visible = False
access_obj.OpenCurrentDatabase("my_database_file.accdb")
access_obj.DoCmd.RunMacro("my_macro")
access_obj.DoCmd.CloseDatabase()
)会导致以下不透明错误消息:
...RunMacro("my_macro")
知道这意味着什么吗?
答案 0 :(得分:0)
如果将宏命名为“ AutoExec”,则在打开数据库时它将自动运行。
来源:Create a macro that runs when you open a database
AutoExec宏只是一个名为AutoExec的宏。当一个 数据库启动后,Access会先运行AutoExec宏,然后再运行 其他宏或VBA代码。