gpt4 book ai didi

python - 使用 xlwings 时出错 : RunFrozenPython + Arguments

转载 作者:太空宇宙 更新时间:2023-11-03 20:56:20 24 4
gpt4 key购买 nike

借助 xlwings 模块,我能够连接 Excel 和 Python,例如我使用以下代码从 print.py 调用函数,使用一个参数,在本例中是数据文件的路径:

RunPython ("import print; print.print_vars(r'" & fullpath & "')")

现在我用 Python 代码构建了一个卡住模块,我想调用卡住版本(保存在同一文件夹\dist\print\print.exe 中),也使用上面所示的参数。

我尝试过:

RunFrozenPython (ThisWorkbook.Path & "\dist\spss_print\spss_print.exe", "r'" & fullpath & "'")

直接在 VBA 模块中提示错误(期望:=)

以及:

RunFrozenPython (ThisWorkbook.Path & "\dist\print\print.exe r'" & fullpath & "'")

运行宏时会导致错误消息(输入的行太长)。

我已经查看了 github 中的数据库示例( https://github.com/xlwings/xlwings/tree/v0.3.5/examples/database ),但这并不将参数与卡住模块一起使用。来自https://docs.xlwings.org/en/stable/deployment.html#runfrozenpython的指令建议使用不同的代码,但该代码也不起作用。

谁能告诉我如何在 VBA 模块中重写调用?感谢您的帮助。

最佳答案

这是一个工作示例:

import xlwings as xw
import sys


def hello_xlwings(arg1, arg2):
wb = xw.Book.caller()
wb.sheets[0].range("A1").value = arg1 + arg2


if __name__ == '__main__':
hello_xlwings(sys.argv[1], sys.argv[2])

然后卡住后,从 VBA 中这样调用它:

RunFrozenPython "C:\path\to.exe", "arg1 arg2"

关于python - 使用 xlwings 时出错 : RunFrozenPython + Arguments,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56006773/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com