[英]Excel Downloading a File using VBS and Batch, Can't Download file from VBS
[英]Using Windows Scheduler to run a .vbs file (via a batch file?)
我有一個 Excel 文件,其中包含來自 MS Access 的查詢,需要在每周一早上 6 點刷新。 目前我們使用 Business Objects 來安排這個,但我們正試圖擺脫這個,因此使用 Access/Excel。
目前我有一個 .vbs 文件:
Set fs = CreateObject("Scripting.FileSystemObject")
Set rootFolder = fs.GetFolder(fs.GetParentFolderName(wscript.ScriptFullName))
Set oExcel = CreateObject("Excel.Application")
oExcel.Visible = True
oExcel.DisplayAlerts = False
oExcel.AskToUpdateLinks = False
oExcel.AlertBeforeOverwriting = False
For Each file in rootFolder.Files
If inStr(file.type, "Excel") > 0 Then
Set oWorkbook = oExcel.Workbooks.Open("Q:\Secure\testing.xlsm")
oWorkbook.RefreshAll
WScript.Sleep 1000 * 60
oWorkbook.Save
oWorkbook.Close
Set oWorkbook = Nothing
End If
Next
oExcel.Quit
Set oExcel = Nothing
這將打開有問題的 excel 文件,刷新其中的查詢(允許一分鍾),然后保存並關閉 excel 文件。 我可以手動打開這個 .vbs 文件,它按預期工作,但是我不想在每周一早上 6 點手動打開。 然后我嘗試將它與 Windows 調度程序結合起來,它不會打球(返回啟動/運行失敗)。 經過一番搜索,我看到了一些使用 .bat 文件打開 .vbs 的建議(通過 Windows 調度程序)。 我對 .bat 文件的嘗試如下:
@echo off
Start "" "Q:\Secure\Automation.vbs"
同樣,當我手動運行它時,它會按預期運行。 當我嘗試通過 Windows 調度程序運行它時,它說它已成功運行,調度程序或彈出窗口中都沒有顯示錯誤消息。 這里的問題是 Excel 文件實際上並未更新或保存。 任何人都可以指出我正確的方向嗎? 我認為我的 .vbs 和 .bat 文件都可以,因為它們在手動運行時可以工作,但看起來可能並非如此......
不要使用批處理文件來運行它。 只需使用...
cscript.exe "Q:\Secure\Automation.vbs"
...作為您在任務計划程序中的命令。
Q:
是網絡驅動器嗎? 您需要將計划任務設置為使用可以訪問該網絡資源的憑據運行,並在批處理文件中映射驅動器,如下所示:
@ECHO OFF
NET USE Q: \\YourServerName\ShareName
START "" "Q:\Secure\Automation.vbs"
我通常只是寫一個批處理文件來調用文件來運行宏。 我在許多項目中都使用了它,但沒有失敗。 確保在模塊中有宏。 ETA:然后安排批處理文件課程
Dim xlApp
Dim xlWkb
Set xlApp = CreateObject("excel.application")
Set xlWkb = xlApp.Workbooks.Open("PATH TO YOUR FILE")
xlApp.Visible = True
xlWkb.RunAutoMacros 1 'enables macros to be run on open
xlApp.Run ("YOUR PROCEDURE")
xlApp.Workbooks("YOUR WORKBOOK NAME").Save 'Save the workbook
xlApp.Quit 'quits excel
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.