如何使用openpyxl3.03找到excel的最后一个非空行?

ia2d9nvy  于 2023-01-31  发布在  其他
关注(0)|答案(3)|浏览(210)

如何使用python和openpyxl找到整个xlsx表的最后一个非空行的行号?

该文件可以有空行之间的单元格和空行在年底可能有内容已被删除.此外,我不想给予一个特定的列,而是检查整个表.
例如,图像中的最后一个非空行是行13。

我知道这个问题已经被广泛讨论过,但我还没有在互联网上找到一个确切的解决方案。

zu0ti5jz

zu0ti5jz1#

# Open file with openpyxl
to_be = load_workbook(FILENAME_xlsx)
s = to_be.active

last_empty_row = len(list(s.rows))
print(last_empty_row)
## Output: 13

s.rows是一个生成器,其列表包含每行单元格的数组。

6psbrbz9

6psbrbz92#

如果你正在使用python和openpyxl查找整个xlsx表的最后一个非空行。

    • 试试这个**
import openpyxl

def last_active_row():
    workbook = openpyxl.load_workbook(input_file)
    wp = workbook[sheet_name]
    last_row = wp.max_row
    last_col = wp.max_column
    
    for i in range(last_row):
        for j in range(last_col):
            if wp.cell(last_row, last_col).value is None:
                last_row -= 1
                last_col -= 1 
            else:
                print(wp.cell(last_row,last_col).value) 
    print("The Last active row is: ", (last_row+1)) # +1 for index 0

if __name__ = '___main__':
last_active_row()

这应该有帮助。

eqqqjvef

eqqqjvef3#

openpyxl的类Worksheet具有属性max_rows

相关问题