Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.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
Python xlwings无法在不同的excel文件中工作_Python_Excel_Vba_Xlwings - Fatal编程技术网

Python xlwings无法在不同的excel文件中工作

Python xlwings无法在不同的excel文件中工作,python,excel,vba,xlwings,Python,Excel,Vba,Xlwings,我在xlwings中启动了一个名为MakeReport的项目。所以我有两个文件:1)MakeReport.xlsm和2)MakeReport.py。MakeReport.py中的python函数将数据写入第三张名为Template.xlsm的excel工作表。它们都在同一个目录中。然后我在Makereport.xlsm中编写了宏,触发了特定的Makereport.py函数。然后在Template.xlsm中,我制作了按钮,并将它们分配给MakeReport.xlsm中相应的宏。在这一点上,一切都

我在xlwings中启动了一个名为MakeReport的项目。所以我有两个文件:1)MakeReport.xlsm和2)MakeReport.py。MakeReport.py中的python函数将数据写入第三张名为Template.xlsm的excel工作表。它们都在同一个目录中。然后我在Makereport.xlsm中编写了宏,触发了特定的Makereport.py函数。然后在Template.xlsm中,我制作了按钮,并将它们分配给MakeReport.xlsm中相应的宏。在这一点上,一切都很顺利

我希望Template.xlsm文件位于一个新目录中,因此我将其与MakeReport文件一起从文件夹中取出。宏仍然是链接的。当我直接在MakeReport.xlsm中运行宏时,一切正常,正确的数据填充到Template.xlsm。但是,当我尝试使用Template.xlsm中的按钮时,会出现以下错误:没有名为“MakeReport”的模块

为什么会这样

以下是我的VBA代码:

Sub TestRun()
    RunPython("import MakeReport;MakeReport.test_run()")
End Sub

我明白了。只需要在Template.xlsm工作簿中创建一个xlwings.config工作表,然后指定PYTHONPATH