首页 > 解决方案 > xlwings 持久化 Python 对象

问题描述

我希望能够使用xlwings. 我正在使用RunPython,因为我在 Mac 上。有谁知道如何创建持久对象?例如:

Sub MySub()
    RunPython ("from mod import MyClass;c = MyClass()")
End Sub

Sub MySubSequent()
    RunPython ("c.call_function()")
End Sub

调用MySub会创建一个MyClass实例,然后MySubSequent会访问它。

我考虑过运行一个 Python 脚本来打开一个工作簿,但是RunPython调用会创建一个新进程,所以这对我没有任何好处。

认为也许这可以使用 UDF 来完成,但由于我无法对其进行测试,所以我不确定(知道这是否是一个选项仍然很高兴)。

谢谢!

标签: pythonexcelmacosxlwings

解决方案


我也在 GitHub 上回复了一个类似的问题,得到了答案。我不会在这里粘贴它以防将来更新:https ://github.com/xlwings/xlwings/issues/621#issuecomment-642461322


推荐阅读