首页 > 解决方案 > 我可以在 xlwings 中为 UDF_Modules 指定一个绝对位置吗?

问题描述

我正在使用 xlwings 将 python 函数公开为 Excel 中的用户定义函数。如果 excel 文件与包含我的 UDF 函数的 .py 文件位于同一目录中,则它可以完美运行。

我想将我的 Excel 文件保存在任何地方,只需更新我的 xlwings.conf 文件以获取包含 udf 定义的 python 模块的位置。

如果我将 conf 文件设置为

"UDF 模块","C:\src\xlwings_wrapper\xlwings_udfs"

我收到以下错误 ModuleNotFound: No module named 'C:\src\xlwings_wrapper\xlwings_udfs'。我是如何检查的并且 xlwings_udfs.py 文件位于该位置。

有谁知道 xlwings 是否支持为 UDF 模块设置绝对路径?

谢谢大卫

标签: pythonxlwings

解决方案


查看解释设置的文档UDF_MODULES仅接受模块名称。模块所在的路径在PYTHONPATH. 因此,在您的示例中,您必须设置以下内容:

"UDF MODULES","name_of_module"
"PYTHONPATH","C:\src\xlwings_wrapper\xlwings_udfs"

推荐阅读