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

使用openpyxl向指定单元格插入列表失败,求解决方案

解决openpyxl插入列表到指定单元格的问题

你的代码错误在于ws.cell(1,2).append(i)的用法——cell()方法返回的是单个单元格对象,它没有append()方法,append()是工作表(Worksheet)对象的方法,用于给工作表追加整行数据。

根据你想要的插入方式,这里提供三种常见场景的正确实现:

1. 横向插入(从指定单元格开始向右填充)

如果想把列表["John", 1, 2, 3]从B1单元格开始,依次填充到B1、C1、D1、E1,代码如下:

from openpyxl import Workbook

wb = Workbook()
ws = wb.active

l1 = ["John", 1, 2, 3]
start_row = 1
start_col = 2  # 对应Excel中的B列

for idx, value in enumerate(l1):
    ws.cell(row=start_row, column=start_col + idx, value=value)

wb.save("tentative.xlsx")

2. 纵向插入(从指定单元格开始向下填充)

如果想把列表从B1单元格开始,依次填充到B1、B2、B3、B4,代码如下:

from openpyxl import Workbook

wb = Workbook()
ws = wb.active

l1 = ["John", 1, 2, 3]
start_row = 1
start_col = 2  # 对应Excel中的B列

for idx, value in enumerate(l1):
    ws.cell(row=start_row + idx, column=start_col, value=value)

wb.save("tentative.xlsx")

3. 将整个列表存入单个单元格

如果是想把列表作为整体存入B1单元格(单元格内容显示为["John", 1, 2, 3]),可以把列表转为字符串后赋值:

from openpyxl import Workbook

wb = Workbook()
ws = wb.active

l1 = ["John", 1, 2, 3]
ws.cell(row=1, column=2, value=str(l1))

wb.save("tentative.xlsx")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 13:00:49