Excel Python 使用 openpyxl

Excel Python using openpyxl

我从我公司的 ERP 数据库中提取了信息,我必须将这些数据添加到已经创建的 sheet 中。但不幸的是,我的问题在于如何使用这些命令。openpyxl 文档对我没有帮助:(

这是我的例子sheet。

import sys
import datetime
from openpyxl import load_workbook

data = datetime.datetime.now()

wb = load_workbook('/home/multipla/Documentos/test.xlsx')
ws = wb.active


for i in ws['B3':'F12']:
 for j in i:
  print j

@编辑:

写这些单元格"Hands On":

ws["B3"].value = '2324'
ws["C3"].value = 'Patty'
ws["D3"].value = ''
ws["E3"].value = "YES"
ws["F3"].value = "Reading"

试图通过制作一个 For 循环遍历每个单元格并写入它们来使该过程自动化...

@Edit2

如果您有一个包含您的属性的字典列表,即:

object_1 = dict()
object_1['ID'] = 1337
object_1['NAME'] = 'Pencil'
...
object_2 = dict()
object_2['ID'] = 1338
object_2['NAME'] = 'Eraser'
...

object_list = list()
object_list.append(object_1)
object_list.append(object_2)

那么你可以这样做:

def add_object(ob, row):
    ws.cell(column=2, row=row).value = ob['ID']
    ws.cell(column=3, row=row).value = ob['NAME']
    ws.cell(column=4, row=row).value = ob['Y']
    ws.cell(column=5, row=row).value = ob['X']
    ws.cell(column=6, row=row).value = ob['ISSUE']

def add_object_list(ob_list):
    for i, ob in enumerate(ob_list):
        add_object(ob, i + 3)

add_object_list(object_list)

结果: