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

使用openpyxl设置Excel单元格字体样式无效、加粗不生效如何解决

openpyxl设置单元格粗体不生效解决方案

可按以下步骤逐一排查解决:

  • 首先排查文件缓存问题
    确认打开的是generated/目录下新生成的文件,不是原模板resg.xlsx,可以临时修改生成文件名做测试,避免打开了本地缓存的旧文件。
  • 清除原有样式冲突
    如果原模板resg.xlsx中的A6单元格属于Excel表格对象(带筛选的插入表)、应用了条件格式或者预设单元格样式,这类预设样式优先级高于手动设置的字体属性,会导致设置不生效。可在设置字体前先清空单元格原有样式:
    from openpyxl import load_workbook
    from openpyxl.styles import Font
    
    wb_orden = load_workbook(filename = 'resg.xlsx')
    ws_orden = wb_orden["Resguardo"]
    ws_orden['A6'] = "hsadgfagahgafdhg"
    # 先重置为默认普通样式,清除原有冲突样式
    ws_orden['A6'].style = 'Normal'
    # 再设置自定义字体
    ws_orden['A6'].font = Font(size = 24, italic = True, bold = True)
    NAME = "generated/"+"res_"+order+".xlsx"
    wb_orden.save(filename = NAME)
    
  • 升级openpyxl版本
    旧版本openpyxl存在样式继承的已知bug,可升级到最新版本后重试:
    pip install --upgrade openpyxl
  • 继承原有字体属性修改
    如果需要保留单元格原有其他字体属性,只修改加粗属性,可通过复制原有字体对象修改的方式实现:
    from copy import copy
    
    # 复制原有字体属性
    new_font = copy(ws_orden['A6'].font)
    # 仅修改加粗属性
    new_font.bold = True
    ws_orden['A6'].font = new_font
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 16:24:05