自动化时出现PowerShell和Excel问题

时间:2012-06-13 02:11:00

标签: sql-server-2008 powershell excel-vba vba excel

我正面临一个奇怪的问题。

当我运行此代码时:

$Excel = New-Object -Com Excel.Application 
$book = $Excel.Workbooks.Add()
[threading.thread]::CurrentThread.CurrentCulture = 'en-US'
sleep 10
$book.saveas("c:\Temp\test.xlsx")
$Excel.quit()
Stop-Process -Name "Excel*"

在PowerGui,POwerSHell主持人......无论如何,它都是美丽的。

如果我输入.bat并调用powerhsell“c:\ temp \ excel.ps1”也可以正常工作。

但是,如果我尝试将此人安排到计划任务或由sql server作业类型cmd运行,则会发生错误:

信息 使用“1”参数调用“SaveAs”的异常:“SaveAs Method of workbook cla ss失败了“

只有当SQL Server Jobs调用它时(这也是一个简单的cmd命令,并且该行与.bat powerhsell“c:\ temp \ excel.ps1”相同),就会发生错误。

它可以是什么?我尝试更改fileformat..etc ..而没有任何

谢谢大家:)

1 个答案:

答案 0 :(得分:7)

解决方案是:

您必须创建一个文件夹(或64位窗口上的两个文件夹):

(32位,总是)

C:\的Windows \ system32 \设置\ systemprofile \ Dektop

(64位)

C:\的Windows \ Syswow64资料\配置\ systemprofile \桌面

解决方案在论坛中:

Solution Forum MS