如何使用openpyxl在excel中删除第一行

时间:2019-04-14 14:46:10

标签: python excel python-3.x

我有一个excel文件,我试图读取第一行并将其传递给另一个函数,并从excel中删除第一行并保存,直到excel文件中的所有行都用完。

我尝试使用openpyxl进行第一次尝试就能够删除第一行,但是当我再次尝试读取excel文件时,它给了我这种例外情况

from gi.repository import GObject

这是我的代码

openpyxl.utils.exceptions.CellCoordinatesException: There is no row 0 (A0)

2 个答案:

答案 0 :(得分:1)

一旦使用delete_rows(beg_row, end_row)删除了行,它们的索引也将被删除,这意味着不再存在带有索引0的行。

答案 1 :(得分:0)

未经测试,但以下调整可以解决该问题。不用读取'A1'并删除行0,而是使用min_row查找第一个非空行,然后读取并删除它。

import openpyxl

filename = "example.xlsx"
wb = openpyxl.load_workbook(filename)
sheet = wb['Sheet1']
status = sheet.cell(sheet.min_row, 1).value
print(status)
sheet.delete_rows(sheet.min_row, 1)
wb.save(filename)