Openpyxl未将选项按钮传输到Excel文件
我写了一个Python程序,使用了openpyxl
模块,这个程序可以上传一个格式化但空白的表单,然后根据数据库里的信息填写这个表单,最后把填写好的表单保存到桌面上。这个表单里还有一些选项按钮和复选框,我打算通过类似下面的方式让程序自动选择它们:
https://superuser.com/questions/385387/how-to-select-radio-buttons-by-cell-value-in-excel
我遇到的问题是,按照现在的程序运行时,新生成的Excel文件里没有选项按钮。
我开始用的文件里已经有这些按钮了,但在程序运行后,它们没有被带到新文件里(我本来想加张图片,但我还没有足够的声望)。
这个文件的布局大致是这样的:
>>> parts = [list of parts]
>>> workbook = load_workbook("report.xlsx")
>>> ws = workbook.get_sheet_by_name("Parts")
>>> for i in range(len(parts)):
>>>>>> Cell_part = ws.cell("A" + str(i))
>>>>>> Cell_part.value = parts[i]
>>> workbook.save("filename")
这些代码和选项按钮没有关系,它们只是用来填充单元格的,运行得很好。我浏览了一下openpyxl的文档,觉得这可能是这个模块的一个限制,但我想问问有没有我遗漏的地方,或者你们有没有什么解决办法。我考虑过使用另一个模块,比如xlrd,但这个程序需要处理.xlsx文件,而xlrd不支持这个格式。
提前感谢大家的帮助。
1 个回答
1
据我所知,按钮需要用VBA来实现。对于处理已有文件时,有一个选项可以保留VBA代码:http://openpyxl.readthedocs.org/en/latest/openpyxl.reader.html#module-openpyxl.reader.excel