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

openpyxl通过load_workbook加载文件写入AVERAGE公式后单元格为空

问题原因
  • 参数配置错误:使用load_workbook()加载文件时若设置了data_only=True,openpyxl会仅读取单元格的计算结果,丢弃所有公式信息,且该模式下写入的公式不会被正常保存,只有单元格格式会生效,和你遇到的现象完全吻合。
  • 版本兼容性问题:你使用的openpyxl 3.0.5属于较早版本,存在写入公式到已加载工作簿时丢失公式内容的已知bug,仅会保留单元格的格式属性。
解决步骤
  1. 修正文件加载参数
    确保加载已有Excel文件时data_only参数保持默认值False,正确加载示例如下:
from openpyxl import load_workbook
wb = load_workbook("你的目标文件路径.xlsx", data_only=False)
  1. 升级openpyxl版本
    直接升级到最新稳定版即可修复版本bug,执行以下命令升级:
    pip install --upgrade openpyxl
  2. 验证写入结果
    写入公式后、保存文件前,可以打印目标单元格的value确认公式已正确写入:
print(ws.cell(100, 2).value)
# 预期输出为:=AVERAGE(B2:B98)

额外说明:保持公式使用英文函数名、逗号作为参数分隔符即可,不需要适配本地语言的函数名,Excel打开时会自动转换为对应系统语言的函数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 11:36:04