繁体   English   中英

如何通过excel VBA运行powershell脚本

[英]how to run powershell script through excel VBA

我正在尝试使用Excel VBA宏来启动PowerShell脚本,如果满足某个条件。 我在代码运行时没有收到任何错误,我可以从Windows资源管理器窗口手动运行PowerShell脚本而不会出错。 但是,当我执行以下VBA代码时,PowerShell不会运行,我不知道为什么。

Dim x as Variant
If rs.RecordCount = 0 Then
    x = Shell("POWERSHELL.exe " & "H:\MyFolder\MyFile.ps1", 1)
End If

我无法判断VBA代码中是否存在错误,因为我没有收到任何运行时错误,但PowerShell脚本实际上并未运行

更新 :使用额外的引号,我现在能够看到错误消息,它在cmd窗口中弹出,但即使有额外的引号,它仍然存在空间问题。 我已将脚本移动到不具有空格的不同文件路径,但我现在看到运行脚本被禁用的错误。 这似乎不再是基于代码的问题。 谢谢你们!

如果您的文件路径有空格,则需要在其周围加上引号。

x = Shell("POWERSHELL.exe -noexit " & _
           """H:\Operations\REPORTS\Reports2018\Balance Sheet\SLmarginJE.ps1""", 1) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM