我正在尝试为Web项目生成报告。报告要求我使用数据填写excel电子表格,然后运行宏来生成详细信息。
使用以下代码
from xlrd import open_workbook
from xlutils.copy import copy
import StringIO
contents=open_workbook("filename.xls")
cloneContents = copy(contents)
#code for adding data to cloneContents here
stream = StringIO()
cloneContents.save(stream)
#this is from a web app so this is stream sent to the user to download
return stream
这一切都正常,但克隆文件似乎丢失了所有宏。我浏览过其他解决方案,但我能看到的唯一一个涉及实际加载excel中的文件,我无法做到,因为这是一个linux服务器。有没有人有任何想法可以做什么? 感谢
答案 0 :(得分:0)
使用xlrd和xlutils无法做到这一点。
但可以使用此分支完成 https://bitbucket.org/amorris/openpyxl/overview of openpyxl。
关键字是contents = load_workbook('filename.xlsm', keep_vba = True);