需要一些有关我的python脚本错误的帮助。我需要在我的excel工作表中获取最后一行的数字。
我正在使用openpyxl==2.5.12
。
下面是我得到的代码和错误。
代码:
workbook = load_workbook(directory)
ws = workbook.active
max_row = ws.max_row
错误:
'NoneType' object has no attribute 'max_row'.
我看到了过去对类似问题的答案。我尝试使用Max_row()
,但没有用。眉头也不起作用。
谢谢!
答案 0 :(得分:1)
您的问题与max_row
无关,错误是说max_row
的对象上没有NoneType
可用,这表明行{{1} }无法正常工作。
我建议您查看workbook = load_workbook(directory)
是什么,因为它似乎是空的。
答案 1 :(得分:0)
形成workbook.active
的文档:
获取当前活动的工作表或无
您的工作簿没有活动的工作表。因此,ws = workbook.active
将ws
设置为None
而不是工作表。这会导致ws.max_row
失败,因为它仅适用于工作表。
您要么必须a)修复工作簿以使其具有活动工作表,要么b)如果您在没有活动工作表的情况下加载工作簿,则不要在此之前。
workbook = load_workbook(directory)
ws = workbook.active
if ws is None:
return # or `continue` a loop, `raise` an exception, `sys.exit` the program, ...
max_row = ws.max_row