【问题标题】:merged cells are broken after load/save using openpyxl使用 openpyxl 加载/保存后合并的单元格被破坏
【发布时间】:2018-09-19 08:16:55
【问题描述】:

我正在使用 openpyxl abd 打开一个 .xlsm 文件,更新了其中的一些单元格,然后保存为 .xlsm 文件。现在,当我打开保存的文件时,我看到在原始文件中合并的单元格在新文件中被破坏了.

我使用的代码是-

from openpyxl import Workbook
from openpyxl import load_workbook
wb = load_workbook('Excel.xlsm',read_only=False ,keep_vba=True)
ws = wb['K0 Reg Patch Util']
ws.cell(row=42,column=3).value = 25
ws.cell(row=43,column=3).value = 30      
ws.cell(row=44,column=3).value = 24
wb.save('Test.xlsm')

即使在简单的打开和保存文件时,原始文件中的 openpyxl 合并列边框也会被破坏。关于这个问题,我已经搜索了很多次,但没有一个解决方案令人满意。我什至遇到了一个monkeypatch脚本,它在包含openpyxl库后将被包含在脚本中。脚本的来源是-

https://bitbucket.org/openpyxl/openpyxl/issues/365/styling-merged-cells-isnt-working

monkeypatch 将覆盖库中存在的合并单元格的定义。

谁能告诉我如何在脚本中包含这个补丁以及脚本中的“self”是什么意思。

【问题讨论】:

    标签: python openpyxl


    【解决方案1】:

    我遇到了类似的问题。但对我来说,这只发生在“受保护”的 excel 文件中。删除该保护对我有用。不再有“破碎”的合并单元格。至少对于扩展名为 .XLSX 的文件,我没有测试 .XLSM。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多