使用openpyxl从特定单元格开始向Excel写一个列表

时间:2016-10-24 12:00:32

标签: python-3.x openpyxl

我正在尝试将值列表写入Excel电子表格,从特定单元格开始。这些值将定期写入,新值将替换现有值,因此写入将始终在单元格F2中开始。我尝试了在SO和其他网站上找到的多个版本,但我一直遇到各种错误,最近的KeyError = 0用于这些工作:

for rowNum in range(len(list)):
    ws.cell(row=rowNum+1, column=5).value = list[rowNum]

for i in range(len(list)):
    ws['F' + r].value = list[i+1]

请帮忙!非常感谢提前。

编辑 - 我在"使用Python自动化无聊的东西",第12章。我将我的数据框转换为字典,然后这工作:

for rowNum in range(2, ws.max_row):
    item = ws.cell(row=rowNum, column=1).value
    if item in new_dict:
        ws.cell(row=rowNum, column=5).value = new_dict[item]

1 个答案:

答案 0 :(得分:1)

我刚刚尝试了下面的脚本,它对我来说很好。

from openpyxl import Workbook
wb = Workbook()

# grab the active worksheet
ws = wb.active

# Data can be assigned directly to cells
ws['A1'] = 42

# Rows can also be appended
ws.append([1, 2, 3])

# Python types will automatically be converted
import datetime
ws['A2'] = datetime.datetime.now()

# Save the file
wb.save("C:\\Users\\your_path_here\\Desktop\\sample.xlsx")