Excel 工作簿在通过任务计划程序作业或 SQL 服务器代理作业刷新后丢失图像
Excel workbook loses images after being refreshed through task scheduler job or SQL Server agent job
当我使用任务计划程序作业或 SQL 服务器代理作业刷新我的 Excel 2010 工作簿时,工作簿中的所有图像都被红色 x 替换。这两个作业都调用 VBS 脚本,该脚本 运行 是工作簿中的一个宏。当我 运行 手动(通过简单地执行脚本)该 VBS 脚本时,没有问题。可能是什么原因,我该如何解决?我尝试为各种用户修改 Content.MSO 文件夹的权限,但没有任何帮助。
代码:
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
问题是以下位置缺少名为 INetCache 的文件夹:
C:\Windows\SysWOW64\config\systemprofile\AppData\Local\Microsoft\Windows
一旦我创建了它并向运行该作业的用户添加了权限(我没有测试是否真的需要设置权限),一旦作业 运行,一个名为 Content.MSO 的新文件夹由系统在 INetCache 下创建,我的 Excel 报告保留了嵌入其中的所有原始图像和图标。
当我使用任务计划程序作业或 SQL 服务器代理作业刷新我的 Excel 2010 工作簿时,工作簿中的所有图像都被红色 x 替换。这两个作业都调用 VBS 脚本,该脚本 运行 是工作簿中的一个宏。当我 运行 手动(通过简单地执行脚本)该 VBS 脚本时,没有问题。可能是什么原因,我该如何解决?我尝试为各种用户修改 Content.MSO 文件夹的权限,但没有任何帮助。
代码:
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
问题是以下位置缺少名为 INetCache 的文件夹: C:\Windows\SysWOW64\config\systemprofile\AppData\Local\Microsoft\Windows 一旦我创建了它并向运行该作业的用户添加了权限(我没有测试是否真的需要设置权限),一旦作业 运行,一个名为 Content.MSO 的新文件夹由系统在 INetCache 下创建,我的 Excel 报告保留了嵌入其中的所有原始图像和图标。