我可以在 VBA 中使用我的 python 自定义对象吗?

Posted

技术标签:

【中文标题】我可以在 VBA 中使用我的 python 自定义对象吗?【英文标题】:Can I use my python custom objects in VBA? 【发布时间】:2015-03-11 17:10:06 【问题描述】:

很明显,在 excel/VBA 中有使用 python 函数的选项。(xlwings、Pyxll、DataNitro)。

但是,我正在寻找在 VBA 中使用 我的 python 对象 的方法。在我的理想世界中,我只能做这样的事情:

dim car1 as object
dim car2 as object
dim road as object

set road = CreateObject("MyPythonLib.road")
set car1 = CreateObject("MyPythonLib.car")
set car2 = CreateObject("MyPythonLib.car")

road.add(car1)
road.add(car2)

【问题讨论】:

您是否搜索过在 Python 中制作 COM DLL 组件的方法?还是服务器应用程序?并设置 InProcServer32 或 LocalServer32、CLSID、ProgId 等?并且可能制作一个类型库,以便您可以在 VBA 中检查您的 Python 对象? 【参考方案1】:

我上次检查时,Excel VBA 仅限于一组有限的 .NET Framework。也就是说,如果你想将 Python 翻译成 C#,你仍然可以调用 C#。

【讨论】:

以上是关于我可以在 VBA 中使用我的 python 自定义对象吗?的主要内容,如果未能解决你的问题,请参考以下文章

从 VBA 调用自定义 Python COM 对象

如何使用 VBA 在 ms 访问表单中创建自定义自动编号? [关闭]

重新计算自定义 VBA 函数,仅应请求

VBA - 自定义插件在笔记本电脑上完美运行,但在其他计算机上不起作用

使用 Collection.Add 使用自定义对象填充 VBA 集合

如何在自定义 Sub 中获取 VBA Access 中文本框的更新值?