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

如何用Openpyxl将列表写入Excel指定单元格?现有代码失效求助

解决方法

你的代码存在几个关键问题:ws.append() 会在工作表末尾追加整行数据,而非写入指定单元格;循环范围错误导致覆盖行数不对;嵌套循环逻辑完全不符合需求。

以下是正确实现代码:

from openpyxl import load_workbook

# 加载现有工作簿
wb = load_workbook('test.xlsx')
# 选中目标工作表
ws = wb['12Channel']

mv = ['200', '200', '4000', '400', '600', '700']

# 遍历行号14到19(range右开,所以写20),同时获取列表对应索引
for row_num, value in zip(range(14, 20), mv):
    # F列对应column=6,写入对应值
    ws.cell(row=row_num, column=6, value=value)

# 务必保存修改后的工作簿
wb.save('test.xlsx')

关键说明

  • 使用ws.cell(row=行号, column=列号, value=值)精准定位单元格并写入数据,F列的列索引是6。
  • range(14,20)会生成14、15、16、17、18、19这6个行号,正好对应列表的6个元素。
  • 操作完成后必须调用wb.save()才能将修改写入到文件,原代码缺少这一步。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 14:40:15