我遇到了一个问题,我已经自动创建了 Excel.Application COM 对象,将一些数据添加到工作簿中,然后将文档另存为 xlsx。
这在以下情况下工作正常:
当我修改相同的计划任务时,它会失败,但将其设置为“无论用户是否登录都运行”。
这是一个示例脚本,说明了我遇到的问题:
$Excel = New-Object -Com Excel.Application
$Excelworkbook = $Excel.Workbooks.Add()
$excelworkbook.saveas("C:\temp\test.xlsx")
$excelworkbook.close()
Run Code Online (Sandbox Code Playgroud)
我有一个理论,如果我的配置文件没有加载/如果它没有在命令窗口中执行,COM 对象会以某种方式失败。
关于在创建计划任务时选择哪些选项,或者在创建 Excel 对象或使用 SaveAs() 函数时使用哪些选项的任何想法?有人可以复制这个吗?我已经能够在 Server 2008 R2 机器和 Windows 7 上看到这种行为。还没有尝试过其他平台。
powershell windows-server-2008 scheduled-task microsoft-excel