使用Openpyxl将单元格分配给变量

时间:2013-07-15 06:08:13

标签: python export-to-excel 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'对象不可调用

非常感谢任何帮助,谢谢。

1 个答案:

答案 0 :(得分:2)

好的,所以我已经弄清楚我在这里失败了,因为我承认它很尴尬!

当我检查实际上尝试提供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

好像已经成功了。