當我使用任務計劃程序作業或SQL Server代理程序作業刷新Excel 2010工作簿時,工作簿中的所有圖像均替換爲紅色x。這兩個作業都調用在工作簿中運行宏的VBS腳本。當我手動運行該VBS腳本時(通過簡單地執行該腳本)就沒有問題了。可能是什麼原因,我該如何解決?我試圖修改Content.MSO文件夾中各種用戶的權限,沒有任何幫助。Excel工作簿在通過任務計劃程序作業或SQL Server代理程序作業刷新後丟失圖像
代碼:
Set objExcel = CreateObject("Excel.Application.14")
Set objWorkbook = objExcel.Workbooks.Open("D:\Files In\test.xlsm")
objExcel.Application.Visible = False
objExcel.Application.Run "'test.xlsm'!MAIN_MACRO"
objExcel.ActiveWorkbook.Save
objExcel.ActiveWorkbook.Saved = True
objExcel.ActiveWorkbook.Close(0)
objExcel.Quit
Set objExcel = Nothing
WScript.Quit
您能否將腳本添加到您的文章中?您是否還嘗試過通過調度程序或SQLServer運行作業,但打開工作簿? – RealCheeseLord
我剛剛嘗試在打開工作簿的情況下運行它,它沒有任何區別,圖像消失並用紅色x代替。 VBS非常簡單:Set objExcel = CreateObject(「Excel.Application.14」) Set objWorkbook = objExcel.Workbooks.Open(「D:\ Files In \ test.xlsm」) objExcel.Application.Visible = False objExcel.Application.Run 「 'test.xlsm'!MAIN_MACRO」 objExcel.ActiveWorkbook.Save objExcel.ActiveWorkbook.Saved =真 objExcel.ActiveWorkbook.Close(0) objExcel.Quit 設置objExcel =無 WScript.Quit – Rafal
我終於找到了解決這個問題的辦法。找到類似問題的註釋[here](https://stackoverflow.com/a/41161719/8543148)我發現在以下文件夾中缺少INetCache文件夾:* C:\ Windows \ SysWOW64 \ config \ systemprofile \應用程序數據\本地\微軟\的Windows *。一旦作業運行,系統就會在新添加的INetCache文件夾下添加一個名爲Content.MSO文件夾的新文件夾,我相信這個文件夾用於存儲一些臨時文件(即Content.MSO)。我確保運行作業的帳戶有權修改INetCache文件夾。 – Rafal