You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用openpyxl将Excel工作表设置为横向?求助

解决openpyxl设置打印方向失败的问题

Hey Ellie! 我明白你折腾了好久都没搞定这个打印方向的设置,查了官方文档也没头绪,这就给你捋清楚怎么弄~

首先看你成功运行的代码,已经正确创建了工作簿、设置了打印区域,这部分没问题。问题出在你尝试设置横向打印的写法上——openpyxl里的打印方向设置并不是你试过的那些方式,得通过工作表的page_setup属性来操作。

给你修正后的完整可运行代码:

import openpyxl
myexcel = openpyxl.Workbook()
mysheet = myexcel.active
mysheet['A1'] = 'Test'
mysheet.print_area = 'A1:Z1'
# 正确设置打印方向为横向
mysheet.page_setup.orientation = mysheet.ORIENTATION_LANDSCAPE
myexcel.save(r'C:\Temp\Testing.xlsx')

为啥之前的写法不行?

  • openpyxl把所有打印相关的配置都放在page_setup对象里,所以直接写mysheet.orientation或者mysheet.page.orientation都是找不到对应属性的
  • 另外,设置方向时推荐使用工作表内置的常量(ORIENTATION_LANDSCAPE对应横向,ORIENTATION_PORTRAIT对应纵向),而不是直接传字符串(虽然传大写的'LANDSCAPE'也能生效,但用常量更规范,不容易写错)

如果之后还要调整其他打印设置(比如纸张大小、缩放比例),也都是在mysheet.page_setup下面操作哦~

内容的提问来源于stack exchange,提问作者Ellie The Good Dog

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:43:11