Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA能在不指定路径的情况下识别Python位置吗?_Python_Vba - Fatal编程技术网

VBA能在不指定路径的情况下识别Python位置吗?

VBA能在不指定路径的情况下识别Python位置吗?,python,vba,Python,Vba,我有一个调用python程序的VBA代码 Sub Macro_bi() Dim Ret_Val Dim args as String args = """F:\Asset Management\Global Equity\Optimiser.py""" Ret_Val = Shell("C:\Users\CRay\anaconda3\python.exe" & " " & args, vbNormalFocus) End Sub 这在我的电脑上很

我有一个调用python程序的VBA代码

Sub Macro_bi()
    Dim Ret_Val
    Dim args as String
    args = """F:\Asset Management\Global Equity\Optimiser.py"""
    Ret_Val = Shell("C:\Users\CRay\anaconda3\python.exe" & " " & args, vbNormalFocus)
End Sub

这在我的电脑上很好用。但是,我希望工作中的每个人都能够使用此代码。虽然所有其他信息将保持不变,但每个人的本地Python文件路径将根据其用户名而改变。我可以手动转到每个人的计算机并为他们更改它,但我想知道是否有更有效的方法来执行此操作,VBA可以自己识别本地路径?

这比您预期的要复杂得多。如果他们安装了多个python版本呢?如果他们更喜欢使用虚拟环境呢?将要使用虚拟环境的人都没有任何编程经验,所以我很有信心他们没有安装Python,也肯定没有任何偏好。python程序基本上运行一个优化问题。用户仅在excel工作表中输入数据,并在excel工作表中接收输出。假设每个人的位置都是类似的格式,我是否可以识别他们的本地用户名并将其输入字符串?这比你想象的要复杂得多。如果他们安装了多个python版本呢?如果他们更喜欢使用虚拟环境呢?将要使用虚拟环境的人都没有任何编程经验,所以我很有信心他们没有安装Python,也肯定没有任何偏好。python程序基本上运行一个优化问题。用户仅在excel工作表中输入数据,并在excel工作表中接收输出。假设每个人的位置都是类似的格式,我是否可以识别他们的本地用户名并将其输入字符串?