Openpyxl - 获取错误 - 不返回任何数据

时间:2015-05-18 07:29:43

标签: openpyxl

这是代码 -

    wb   = load_workbook(filename, use_iterators=True)
    ws   = wb.worksheets[0]

 for row in range(1, 4):
     for col in range(32, 35):
        print 'Value = ', ws.cell(column=col, row=row, value="%s" %   get_column_letter(col))

程序的输出如下 -

 Value =  <Cell Data.AF1>
   Value =  <Cell Data.AG1>
   Value =  <Cell Data.AH1>
   Value =  <Cell Data.AF2>

如何获得正确的值?

我尝试了以下方法 -

print 'Value = ', ws.cell(row = 1, column = 1).value

O/P is Value =  None

print 'Value = ', ws['A1'].value

O/P is Value =  ExportDate (This is the correct value)

2 个答案:

答案 0 :(得分:0)

ws.cell()始终返回一个Cell对象,这是您在print语句中看到的对象。 .value属性返回单元格的值。 ws.get_squared_range()将允许您从工作表中获取一系列单元格。所有这些都包含在文档中。

答案 1 :(得分:0)

我可能会误解你的问题,但我认为这就是你想要的:

1)不要使用use_iterators。我认为这是问题的一部分。就这样做:

wb   = load_workbook(filename)
ws   = wb.worksheets[0]

2)如果你想要这个值,那么你需要要求它:

for row in range(1, 4):
    for col in range(32, 35):
        print 'Value = ', ws.cell(column=col, row=row).value