我使用openpyxl
模块编写了一个python程序,该模块上传了格式化的空白表单,并根据需要使用pyodbc从数据库中填写表单,然后将填好的表单保存到桌面。该表单还有一些选项按钮和复选框,我打算让表单通过类似的过程自动选择:
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不会这样做。
提前感谢您的帮助。
答案 0 :(得分:0)
AFAIK按钮需要VBA。使用现有文件时,可以选择保留VBA:http://openpyxl.readthedocs.org/en/latest/openpyxl.reader.html#module-openpyxl.reader.excel