循环 excel 表格内容时无法修改合并单元格
在上述 python 代码中,当循环处理包含合并单元格的 excel 表格时,代码会抛出 attributeerror: ‘mergedcell’ object attribute ‘value’ is read-only 错误。这是因为合并的单元格是只读的,无法直接通过 value 属性对它们进行修改。
为了成功修改合并单元格中的值,需要使用以下步骤:
- 查找合并单元格:使用 worksheet.merged_cells 属性获取合并单元格的范围。
- 选择一个单元格进行修改:在合并单元格范围内选择一个未合并的单元格,并对该单元格的值进行修改。
- 合并单元格:使用 worksheet.merge_cells 方法合并要修改的单元格与其周围的单元格。
下面是修改后的代码示例:
立即学习“”;
from openpyxl import load_workbook wb = load_workbook("data.xlsx") sheet = wb.active for merged_cell in sheet.merged_cells: # 查找合并单元格左上角的单元格 start_cell = merged_cell.min_row, merged_cell.min_col # 修改左上角单元格的值 sheet.cell(*start_cell).value = n # 合并单元格 sheet.merge_cells(merged_cell) wb.save('data1.xlsx')
登录后复制
以上就是Python 循环 Excel 表格:如何修改合并单元格的值?的详细内容,更多请关注php中文网其它相关文章!