在VBA代码中,当调用python文件的路径中没有空格时,我正在调用Python并成功传递一个参数:
Dim wsh As Object
Set wsh = CreateObject("WScript.Shell")
Dim shell_exec As Object
Set shell_exec = wsh.Exec("C:\path_to_executable\python.exe " & "C:\path_without_spaces\file.py " & arg)
但是,当python文件的路径包含空格时,我找不到任何方法将参数传递给python。例如,当没有参数时,三重双引用路径:
Set shell_exec = wsh.Exec("C:\path_to_executable\python.exe " & """C:\path with spaces\file.py""")
但是在这样做时我无法找到任何传递参数的方法。例如,像这样的调用(以及我能想到的这个主题的每个变体)都会失败:
Set shell_exec = wsh.Exec("C:\path_to_executable\python.exe " & """C:\path with spaces\file.py """ & arg)
这是可能的,还是在这种情况下使用空间致命的模糊不清?
建议表示赞赏。
答案 0 :(得分:1)
尝试使用多个引号:
{{1}}