Как удалить первую строку в Excel с openpyxl - PullRequest
1 голос
/ 14 апреля 2019

У меня есть файл 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)

Ответы [ 2 ]

1 голос
/ 14 апреля 2019

Когда строки удаляются с помощью delete_rows(beg_row, end_row), их индекс также удаляется, что означает, что строки с индексом 0 больше не существует.

0 голосов
/ 14 апреля 2019

Не проверено , но следующий трюк должен это исправить. Вместо чтения '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)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...