我需要從vba中調用python腳本,它可以通過使用shell來正常工作。用wsh調用vba的python腳本
Sub CallPythonScript()
Call Shell("C:\Program Files (x86)\Python27\python.exe C:\Users\Markus\BrowseDirectory.py")
End Sub
但是,當我嘗試使用wsh(因爲等待funcionality)它只是不會工作了。
Sub CallPythonScript()
Dim wsh As Object
Set wsh = VBA.CreateObject("WScript.Shell")
Dim myApp As String: myApp = "C:\Program Files (x86)\Python27\python.exe C:\Users\Markus\BrowseDirectory.py"
Dim waitOnReturn As Boolean: waitOnReturn = True
Dim windowStyle As Integer: windowStyle = 1
wsh.Run """"" & myApp & """"", windowStyle, waitOnReturn
End Sub
但是,我在家中使用了相同的代碼,並且一切正常,只是路徑中沒有任何空白。所以自然而然地,這些空白肯定會出現問題。非常感謝幫助。
我懷疑它曾用過那條路:你的路徑中有空格。 wsh.Run如何知道如何解析參數?在家裏,你肯定有'C:\ python27'中的python。 –
準確地說,這就是我的意思是「路徑中沒有任何空白」。 –