我期待安排一個MS Access宏的調用。這個宏使用一個.csv文件(我每天都會得到)來更新SharePoint日曆。是否有人可以解釋如何在我的Windows 7計算機上安排每日呼叫來運行此宏(我使用Access 2003,比如EventsCalendar.accdb和稱爲Run1的宏)?我需要將其自動化,以便每天早上運行。如何安排對MS Access宏的調用?
謝謝!
我期待安排一個MS Access宏的調用。這個宏使用一個.csv文件(我每天都會得到)來更新SharePoint日曆。是否有人可以解釋如何在我的Windows 7計算機上安排每日呼叫來運行此宏(我使用Access 2003,比如EventsCalendar.accdb和稱爲Run1的宏)?我需要將其自動化,以便每天早上運行。如何安排對MS Access宏的調用?
謝謝!
編寫一個可以直接從Windows運行宏的VBScript腳本。您可以通過首先在您的腳本中創建一個Access應用程序對象,然後將此Access對象放在需要它的腳本中的所有調用之前執行此操作。例如,
' RunMyMacro.vbs
set accessApp = CreateObject("Access.Application")
accessApp.OpenCurrentDatabase "C:\db\mydb.accdb"
accessApp.DoCmd.RunMacro "MyMacroName"
accessApp.CloseCurrentDatabase
accessApp.Quit
set accessApp = nothing
這個腳本是現在可以從Windows外殼程序或命令行運行的:
C:\db>cscript //B //Nologo RunMyMacro.vbs
所以你可以安排它作爲Windows計劃任務。
謝謝 - 現在就試試看 - 這看起來像我在找的東西! – 2013-02-12 19:25:01
這個作品真棒!謝謝你,Yawar! – 2013-02-12 21:45:35
@DmitriB,很高興幫助。我深入瞭解了Access的開發,因此在我的腦海裏都是新鮮的。 – Yawar 2013-02-13 00:13:35
嘗試命名您的宏「AutoExec」,這將使宏在每次打開Access時運行。然後在Windows中,只需使用任務計劃程序在您每次登錄時或早上8點打開該Access文件等。 – Grant 2013-02-12 00:18:59
如果您不希望宏每運行一次,請將其命名爲「AutoExec」 '。然後你可以在'/ x'開關後面傳遞宏名:'「MSACCESS.EXE的路徑」「你的db文件的路徑」/ x YourMacroName'你可以把它放在批處理文件或VBScript文件中,或者設置它直接在Windows任務調度器中。另請參閱http://stackoverflow.com/q/7676495/77335 – HansUp 2013-02-12 05:50:57
謝謝你們!這有助於一噸!給予好評! – 2013-02-12 19:24:44