2016-05-02 23 views
0

私はpowershellスクリプトを呼び出す行を持っていますが、動作しますが、動作しなくてもpowershellのウィンドウは閉じられます。Vbaがpowershellスクリプトまたは.batファイルを呼び出す

コードは、任意のアイデアですか?

また、私は同じエラーを取得します(私は、 "GUI-getuserpropertiesV2.10.ps1 \" & pathcrnt & pathcrnt &(シェルを試してみました)、.BATファイルを実行できるようにビットをしたいと思います。

Sub CallBatch() 

    Dim pathcrnt As String 

    pathcrnt = ActiveWorkbook.Path 
    Shell ("PowerShell " & pathcrnt & "\GUI-getuserpropertiesV2.10.ps1" & pathcrnt) 

End Sub 
+0

以下の回答のいずれかがあなたの問題を解決しましたか? – Leviathan

答えて

0

以下のリンクを参照して、マシンの権限を持っていることを確認してください。

http://www.tek-tips.com/viewthread.cfm?qid=1585510

私はあなたのセットアップやセキュリティについて知らないので、あなたがencounte場合rエラー、「PS許可」などの行を検索してください。 VBAスクリプトは間違いなく動作します!あなたは.ps1後にスペースを挿入した場合

0

それが動作するはずです:

Sub CallBatch() 

    Dim pathcrnt As String 

    pathcrnt = ActiveWorkbook.Path 
    Shell "PowerShell " & pathcrnt & "\GUI-getuserpropertiesV2.10.ps1 " & pathcrnt 

End Sub 

は、結果の文字列を想像してみて。 pathcrnt C:\Windowsのためには、このようになります:"PowerShell C:\Windows\GUI-getuserpropertiesV2.10.ps1C:\Windows"

また、このように、あなたのパラメータをいじってスペースを防ぐために、二重引用符でパス要素を囲むすることがあります:二重引用符は、文字列の区切り文字であるため

Shell "PowerShell """ & pathcrnt & "\GUI-getuserpropertiesV2.10.ps1"" """ & pathcrnt & """" 

VBAでは別の二重引用符でエスケープする必要があります。

+0

@ ryguy7272:これはあなたのために働いていますか?または、私は追加のヘルプを提供できますか? – Leviathan

関連する問題