当我尝试填充现有 .xlsx 文件中的单元格,然后将其保存到新文件时,我收到消息:
import openpyxl
path = "/home/karol/Dokumenty/wzor.xlsx"
wb_obj = openpyxl.load_workbook(path)
sheet_obj = wb_obj.active
new_protokol = sheet_obj
firma = input("Podaj nazwe: ")
nazwa_pliku = "Protokol odczytu"
filename = nazwa_pliku + firma + ".xlsx"
sheet_obj["C1"] = firma
sheet_obj["D1"] = input()
new_protokol.save(filename=filename)
Traceback (most recent call last):
File "/home/karol/PycharmProjects/Protokolu/Main.py", line 16, in <module>
sheet_obj["C1"] = firma
File "/home/karol/PycharmProjects/Protokolu/venv/lib/python3.7/site-packages/openpyxl/worksheet/worksheet.py", line 309, in __setitem__
self[key].value = value
AttributeError: 'MergedCell' object attribute 'value' is read-only
Process finished with exit code 1
如何解决?
原文由 zumber 发布,翻译遵循 CC BY-SA 4.0 许可协议
当您合并单元格时,除了左上角的单元格之外的所有单元格都将从工作表中删除。为了携带合并单元格的边界信息,合并单元格的 边界单元 格被创建为 MergeCells,其值始终为
'None'
请尝试这种方法,它对您来说效果很好。