我遇到了使用python / flask从excel运行宏的问题。
如果文件中没有空格,则可以运行宏,如果文件中有空格,我就无法运行。
这里是py文件的代码
app.route('/process_done', methods=['POST'])
def runmacros():
run_macro("Main System FIndx.xlsm!Test_macro.Prueba","..\System\Main Test.xlsm")
return render_template('main.jade')
和功能
def run_macro(macroname, filetorun):
pythoncom.CoInitialize ()
xlApp = Dispatch('Excel.Application')
xlWb = xlApp.Workbooks.Open(filetorun)
xlSht = xlWb.WorkSheets(1)
xlApp.visible = True
xlApp.Application.Run(macroname)
xlWb.Saved = 0
xlWb.Save()
xlWb.Close(SaveChanges=True)
xlApp.application.Quit()
因此,如果文件重命名为" MainTest"当按下按钮模板时,宏会运行,但如果我调用了#34; Main Test"不起作用。
也许解决方案非常简单,但我可以找到它。
提前致谢。
pd:当我尝试运行宏时显示问题,文件打开没有问题。
编辑:
解决
xlApp.Application.Run python上的并不需要全名,因此我将Main System FIndx.xlsm!Test_macro.Prueba更改为" Test_macro.Prueba"并且工作! :d
答案 0 :(得分:0)
解决
xlApp.Application.Run python上的并不需要全名,因此我将Main System FIndx.xlsm!Test_macro.Prueba更改为" Test_macro.Prueba"并且工作! :d