編輯:只有當Outlook實例已在運行時纔會發生此錯誤。VBA運行時錯誤:249 - 僅在Schtasks發生時
這是一個奇怪的錯誤。我已經設置了一個宏,在每天早上下載報告後自動執行。
宏被該VBS代碼執行:
Dim xl
Set xl = CreateObject("Excel.Application")
Dim WshShell, strCurDir
Set WshShell = CreateObject("WScript.Shell")
strCurDir = WshShell.CurrentDirectory
xl.Application.Workbooks.Open(strCurDir & "\TodaysScript.xlsm")
xl.Application.Visible = False
xl.Application.run "'TodaysScript.xlsm'!autoOpen"
xl.DisplayAlerts = False
xl.Quit
Set xl = Nothing
Set WshShell = Nothing
autoOpen
是我跑(我故意迴避Auto_Open
)
一切工作的樂趣,當我運行腳本的宏的名稱,但是腳本通過schtasks
執行的那一刻就會返回該錯誤:
調試時,在這裏顯示出來:
我已經做了很多的閱讀,知識庫文章沒有幫助。
如果雙擊我的VBS並正常執行,它會如何工作,但是當我通過schtasks
執行它時,會出現錯誤。
這裏是schtask查詢
schtasks /create /tn "Reports" /tr %file% /sc weekly /st 10:00:00 /d MON,TUE,WED,THU,FRI /V1
我還可以補充:這是昨天的工作,但現在它已經停止了我的兩個電腦上工作,和學校的電腦。
莫非它可能是一個權限問題?不完全在這些語言的領域,但我已經寫了批處理文件,由SQL Server代理作業執行,如果我只是雙擊.bat文件,它運行良好,但是當實際作業運行它時,它爲任務運行的帳戶提供權限錯誤。 –
我也在想。我怎樣才能以編程方式更改執行VBA的用戶? – Moe
我也相信這是一個權限問題。給'schtasks'管理員權限來執行腳本,這樣就可以了。 –