我通过VBA宏启动Python。如果Python路径不好,我想要一个正确的错误消息。 我在2台不同的计算机上使用这个宏,并且这两台计算机上的Python路径不一样。 2个路径位于2个不同的单元格名称path_Python和path_Python_2 这是我的代码:
Function launchPython() As Boolean
Dim pathScript As String
pathScript = [path_files] + "code.py"
On Error GoTo err
Shell [path_Python].Value & " " & pathScript
launchPython = True
Exit Function
err:
On Error GoTo err2
Shell [path_Python_2].Value & " " & pathScript
launchPython = True
err2:
launchPython = False
MsgBox "Error: please check Python paths"
End Function
问题是,当2路径不好时,而不是转到err2,我有一个阻塞的VBA错误消息
err:
On Error GoTo err2
Shell [path_Python_2].Value & " " & pathScript
我该如何解决这个问题? 非常感谢你
答案 0 :(得分:0)
我会检查文件是否存在并尝试将其命名为可能丢失的路径。您可以使用许多函数之一,例如http://allenbrowne.com/func-11.html中的FileExists,或者只检查dir $返回非空白。
Dim Path as string
path = path_python
if dir(path) = "" then
path = path_python2
if dir(path) = "" then err.raise
end if
shell path & " " & pathScript