我有一个excel文件,我正在尝试读取第一行将其传递给另一个函数并从excel中删除第一行并保存,直到excel文件中的所有行都用完为止。
我尝试使用openpyxl我能够在第一次尝试时删除第一行但是当我再次尝试读取excel文件时它会给我这个例外
openpyxl.utils.exceptions.CellCoordinatesException: There is no row 0 (A0)
这是我的代码
import openpyxl
filename = "example.xlsx"
wb = openpyxl.load_workbook(filename)
sheet = wb['Sheet1']
status = sheet['A1'].value
print(status)
sheet.delete_rows(0, 1)
wb.save(filename)
未经测试,但以下调整应修复它。而不是阅读'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)
一旦用delete_rows(beg_row, end_row)
删除行,它们的索引也会被删除,这意味着不再存在索引0
的行。