Назначение ячеек переменной с помощью Openpyxl



from openpyxl import load_workbook,workbook   
book = load_workbook('myfile.xlsx')
sheet = book.get_active_sheet()
for r in sheet.rows:
for cell in r:
firstname = cell.value(row=r, column='1')
lastname = cell.value(row=r, column='2')
print firstname, lastname


Я хочу присвоить значение каждой ячейки в текущей строке отдельной переменной. Когда я пробую приведенный выше код, я получаю ошибку:




TypeError: объект 'unicode' не вызывается




Любая помощь очень ценится, спасибо.

617   1  

1 ответ:

Итак, я понял, где я потерпел неудачу здесь, как ни стыдно мне это признавать!

Когда я проверил, какие значения я на самом деле пытался передать Openpyxl ошибка была ясна, переменная "r" была строкой, полной данных, а не целым числом. Используя простой "rowcount", как..

rowcount = 0
for r in ws.rows:
    firstname = ws.cell(row = rowcount, column = 0)
    lastname = ws.cell(row = rowcount, column = 1)
    rowcount = rowcount + 1
    print firstname.value, lastname.value

Похоже, это сработало.

Comments

    Ничего не найдено.