如何安排宏在Access 2007中自动运行

ale*_*oco 5 macros ms-access ms-access-2007 scheduled-tasks

我想要一个名为Macro1的宏,例如每天早上9点运行.它可以通过Access 2007中的VB代码编辑器自行运行,但我希望它能够在没有打开访问权限的情况下自动执行.

请注意,我不希望必须进行任何人为干预,它需要能够自动运行而无需打开Access来触发autoexec或onload或类似的东西.

这是可能吗?

Dav*_*ton 6

您可以使用MS Access命令行开关来运行宏.如果在Access帮助中搜索"命令行",则"启动命令行选项"主题将为您提供所有命令行开关.运行宏的开关是x macro.

因此,如果你编写宏来运行你想要的任何东西并让它在完成时退出Access,你就可以创建一个命令行来完成这个技巧并将它放在Windows任务计划程序可以执行的批处理文件中.

但是,正如我在上面的评论中所说,如果您只是运行一些查询,我会说完全绕过Access并在计划的vbScript中直接使用DAO来执行查询更有意义.


noo*_*dle 5

您必须创建 vbscript 来运行您的宏并创建一个批处理文件来安排您的 vbscript。

  • vbscript 代码,将其保存为 schedule.vbs 文件

    Dim accessApp
    set accessApp = createObject("Access.Application") accessApp.OpenCurrentDataBase("fullpath\msaccessdb")

    accessApp.Run "Macroname",param1, param2,param3
    accessApp.Quit
    set accessApp = nothing

  • 然后创建file.bat

    @echo off
    cscript schedule.vbs

并准备好使用 Windows 任务计划程序http://www.thewindowsclub.com/how-to-schedule-batch-file-run-automatically-windows-7安排它

希望这有助于:D

  • @noodle,vbscript 文件有什么意义?为什么不直接运行宏? (2认同)