我目前正在使用Python 2.7,到目前为止已经能够实现这一目标。我需要在D列中打印单元格的值,直到excel表格的最大行。
wb = openpyxl.load_workbook(filename)
sheet = wb.get_sheet_by_name('Something')
for row in range(2, sheet.get_highest_row()):
bla=str(row)
status = sheet['D' + bla].value()
print status
这给出了追溯
Traceback (most recent call last):
File "ExcelAnalysis.py", line 25, in <module>
status = sheet['D' + bla].value()
TypeError: 'Worksheet' object has no attribute '__getitem__'
答案 0 :(得分:0)
我怀疑您使用的是openpyxl
的过时版本,请更新它:
pip install --upgrade openpyxl
而且,你不应该打电话给value
,这是一个属性:
status = sheet['D' + bla].value
答案 1 :(得分:0)
我认为这是一种非常原始且不太优化的方式,但我得到了答案。
for cow in range(1, sheet.get_highest_row()):
status = sheet.cell(row=cow, column=3).value
请,如果有人可以,请帮助我改进它。 非常感谢你提前。
详情请见this page