|
发表于 2023-6-24 16:12:52
|
显示全部楼层
本楼为最佳答案
 根据你的错误提示,问题发生在尝试从 openpyxl.worksheet.page 导入 PageSetup 时。在你的代码中,你尝试了两次这个导入操作,一次从 openpyxl.worksheet.page ,一次从 openpyxl.worksheet.pagefields ,这两者似乎都不能正确地导入 PageSetup 。
在Openpyxl库中,并没有 PageSetup 这个类,你可能需要使用不同的方式来调整页面大小。
如果你想改变Excel的页面设置,例如设置页面方向、纸张大小、页边距等,可以直接操作 Worksheet.page_setup 和 Worksheet.page_margins 这两个属性,如下所示:
- from openpyxl import load_workbook
- # 打开工作簿
- workbook = load_workbook('35B08-Z3-36M.xIsx')
- # 获取第一个工作表
- worksheet = workbook.active
- # 调整页面设置
- worksheet.page_setup.orientation = worksheet.ORIENTATION_LANDSCAPE
- worksheet.page_setup.paperSize = worksheet.PAPERSIZE_TABLOID
- worksheet.page_setup.fitToPage = True
- worksheet.page_setup.fitToHeight = 0
- worksheet.page_setup.fitToWidth = 1
- # 调整页边距
- worksheet.page_margins.left = 0.25
- worksheet.page_margins.right = 0.25
- worksheet.page_margins.top = 0.75
- worksheet.page_margins.bottom = 0.75
- worksheet.page_margins.header = 0.3
- worksheet.page_margins.footer = 0.3
- # 保存修改后的工作簿
- workbook.save('modified.xlsx')
复制代码
以上代码会设置页面为横向布局,纸张大小为Tabloid,内容按页宽自动适应,并设置了各项页边距。
请注意,由于Openpyxl的版本不同,某些设置项可能无法生效,具体情况需要根据你的需求和Openpyxl的版本进行调整。 |
|