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

使用Python修改Excel字体颜色报错:Colors must be aRGB hex values

解决openpyxl设置颜色时的ValueError问题

错误原因

openpyxl设置样式颜色时,要求使用8位aRGB十六进制值(前两位为透明度,FF表示完全不透明),而你用的#4F81BD是6位RGB格式,缺少透明度通道,因此触发ValueError: Colors must be aRGB hex values错误。

解决步骤

  1. 转换颜色格式

    • 填充色#4F81BD:去掉#号,在前面添加FF(完全不透明),得到FF4F81BD
    • 文本白色:使用完全不透明的aRGB值FFFFFFFF(部分场景兼容6位FFFFFF,但严格遵循要求建议用8位)
  2. 修正后的代码示例

from openpyxl import load_workbook
from openpyxl.styles import Font, PatternFill

# 加载目标Excel文件,指定工作表
wb = load_workbook("你的文件路径.xlsx")
ws = wb["目标工作表名称"]

# 定义填充样式(aRGB格式)
fill_style = PatternFill(start_color="FF4F81BD", end_color="FF4F81BD", fill_type="solid")
# 定义字体样式(白色文本,aRGB格式)
white_font = Font(color="FFFFFFFF")

# 遍历首行所有单元格应用样式
for cell in ws[1]:
    cell.fill = fill_style
    cell.font = white_font

# 保存修改后的文件
wb.save("修改后的文件路径.xlsx")

注意事项

  • 颜色值不要带#号,直接传入纯十六进制字符串
  • 透明度取值范围为00(完全透明)到FF(完全不透明),可根据需求调整

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 00:35:09