【问题标题】:Remove Automatic Page Breaks in Openpyxl删除 Openpyxl 中的自动分页符
【发布时间】:2021-06-09 18:01:03
【问题描述】:

我在 Python 中使用 openpyxl 写入工作表。我需要为特定行添加分页符。我可以使用这段代码成功地添加这些换行符:

page_break_rows = [44, 90, 135, 180, 226, 262]
    for row in page_break_rows:
        self.new_sheet.row_breaks.append(Break(id=row))

但是,我似乎无法摆脱 Excel 创建的自动分页符,从而在我的工作表上留下一堆不必要的页面。有关如何删除 Excel 制作的分页符或如何将它们移动到正确位置的任何建议?

【问题讨论】:

  • 您可以检查工作表的分页符以查看 Excel 创建了什么。

标签: python excel row openpyxl page-break


【解决方案1】:

我遇到了和你一样的问题。但似乎我找到了解决它的方法。请阅读以下几行:

import xlwings as xw
app=xw.App(visible=False,add_book=False)
workbook=app.books.open('XXX.xlsx')
worksheet=workbook.sheets('XXX')
worksheet.api.ResetAllPageBreaks() 
workbook.save()
app.quit()

【讨论】:

    【解决方案2】:

    关键行是这样的:worksheet.api.ResetAllPageBreaks(),它应用了来自vba的代码。一些 vba 代码可以与 xlwings 中的 'api' 一起使用。

    【讨论】:

    • 请编辑您的其他答案,而不是再次发布。另外请正确格式化您的代码(我这次为您编辑了它)。
    猜你喜欢
    • 1970-01-01
    • 2013-09-03
    • 1970-01-01
    • 2023-04-09
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多