我想要一个名为Macro1的宏,例如,每天早上9点运行。它可以通过Access 2007中的VB代码编辑器自行运行,但我希望它能够在没有访问权限的情况下自动执行。
请注意,我不希望任何人为干预,它需要能够自动运行而无需打开Access来触发autoexec或onload或类似的事情。
这一切都可能吗?
答案 0 :(得分:6)
您可以使用MS Access命令行开关来运行宏。如果在Access帮助中搜索“命令行”,则“启动命令行选项”主题将为您提供所有命令行开关。运行宏的开关是x macro
。
因此,如果你编写宏来运行你想要的任何东西并让它在完成时退出Access,你就可以创建一个命令行来完成这个技巧,并将它放在Windows任务计划程序可以执行的批处理文件中。
但是,正如我在上面的评论中所说,如果你只是运行一些查询,我会说完全绕过Access并直接在计划的vbScript中使用DAO来执行查询更有意义。
答案 1 :(得分:4)
您可以使用Windows任务计划程序和VBScript来运行代码或启动Access。
答案 2 :(得分:4)
您必须创建vbscript才能运行宏并创建批处理文件来安排vbscript。
vbscript代码,将其另存为schedule.vbs文件
Dim accessApp
set accessApp = createObject(“Access.Application”)
accessApp.OpenCurrentDataBase( “FULLPATH \ msaccessdb”)
accessApp.Run“Macroname”,param1,param2,param3
accessApp.Quit
设置accessApp = nothing
然后创建file.bat
@echo off
cscript schedule.vbs
并准备好使用Windows任务计划程序安排它 http://www.thewindowsclub.com/how-to-schedule-batch-file-run-automatically-windows-7
希望这有帮助:D