在VBA中使用返回值调用Powershell脚本

时间:2018-08-27 07:43:00

标签: vba powershell

假设我有一个像这样的powershell脚本:

'Hey'

我想这样调用VBA:

Sub CallPowerShell()

    Call Shell("powershell.exe -ExecutionPolicy Bypass C:\Users\chm\Documents\5.ps1")

End Sub

我知道这可以用作控制台窗口,其中会短暂弹出一个单词“ Hey”。但是,我真正想要的是在我的VBA代码中使用此字符串。

有没有简单的方法可以通过VBA从Powershell脚本中获取返回值?

理想情况是:

Dim x As String

Sub CallPowerShell()

    x = Shell("powershell.exe -ExecutionPolicy Bypass C:\Users\chm\Documents\5.ps1")

End Sub

但这只是将x设置为看似随机数,如70640或30960。

我可以让Powershell脚本将我想要的值写入文件,然后在VBA中读取文件,但是如果我可以跳过它,那真是太好了,所以我想问一下。

0 个答案:

没有答案