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

使用Python 3的openpyxl无法设置Excel单元格格式的问题

问题分析与解决:openpyxl设置Excel格式本地无效果,其他电脑正常

代码逻辑说明

你的代码存在多次格式覆盖的情况:

  • 先单独设置B2-B6的背景色
  • 接着通过循环把第2-6行所有单元格设为绿色,覆盖了之前的B2-B6设置
  • 最后循环把第2-12行的偶数行单元格设为灰色,再次覆盖了之前的绿色设置

最终预期效果应为:第2、4、6、8、10、12行单元格背景为灰色,第7、9、11行无自定义格式(默认样式)。既然朋友电脑正常运行,说明代码逻辑本身无问题,问题出在本地环境或Excel设置。

排查与解决步骤

  • 检查openpyxl版本一致性
    运行pip show openpyxl查看本地版本,和朋友的版本对比。若版本不同,安装相同版本:

    pip install openpyxl==[朋友的版本号]
    

    比如朋友使用3.0.10,就执行pip install openpyxl==3.0.10

  • 确认文件保存路径与权限

    • 确保test_Excel.xlsx没有被Excel或其他程序占用,否则保存操作会静默失败
    • 改用绝对路径保存,避免路径混淆:
      wb_style.save(r"C:\Users\你的用户名\Desktop\test_Excel.xlsx")
      
      替换为你电脑上的实际路径,比如桌面路径
  • 检查Excel显示设置

    • 打开Excel,点击「文件>选项>高级」,找到「此工作簿的显示选项」
    • 取消勾选「显示网格线」,避免网格线覆盖背景色;或确认背景色不是和网格线同色导致无法区分
    • 检查是否开启「高速模式」或「兼容模式」,这类模式可能会忽略部分格式
  • 测试空白文件
    新建一个空白Excel文件,命名为test_Excel.xlsx放在代码同目录,再运行代码。如果生效,说明原文件可能存在损坏或格式兼容问题

内容的提问来源于stack exchange,提问作者Hien Ngu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 20:05:42