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

使用Python的openpyxl无法修改Excel单元格背景色怎么办?

解决openpyxl修改Excel单元格背景色无效的问题

你的代码存在两个关键问题,导致单元格颜色未发生变化,修正后即可正常生效:

1. load_workbook函数调用错误

你仅导入了openpyxl模块,但直接使用load_workbook()属于未定义调用,需要通过openpyxl.load_workbook()调用,或者单独导入该函数。

2. 颜色格式不符合openpyxl要求

openpyxl的PatternFill要求颜色使用8位ARGB格式(Alpha通道+RGB),你使用的6位RGB值无法被正确识别,红色对应的正确ARGB值为FFFF0000。

修正后的完整代码

import os
from openpyxl import load_workbook
from openpyxl.styles import PatternFill

# 用os.path.join避免不同系统的路径分隔符问题
file_path = os.path.join(os.getcwd(), 'File.xlsx')
wb = load_workbook(file_path)
sheet = wb.active

# 选中A1单元格并设置红色填充
cell = sheet['A1']
red_fill = PatternFill(start_color='FFFF0000', end_color='FFFF0000', fill_type='solid')
cell.fill = red_fill

wb.save(file_path)

额外提示

  • 确保操作的Excel文件是.xlsx或.xlsm格式,openpyxl不支持旧版.xls格式
  • 保存文件时,目标Excel不能被其他程序(如Excel客户端)占用,否则会导致保存失败或文件损坏

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 23:25:11