Я хотел бы создать «уменьшенную» версию таблицы Excel (xlsx) (т. Е. Удалив некоторые строки в соответствии с некоторым критерием), и я хотел бы знать, можно ли это сделать с помощью openpyxl
.Как удалить строки с помощью openpyxl?
В (pythonish) псевдо-код, что я хочу сделать, будет выглядеть примерно так:
wb = openpyxl.reader.excel.load_workbook('/path/to/workbook.xlsx')
sh = wb.get_sheet_by_name('someworksheet')
# weed out the rows of sh according to somecriterion
sh.rows[:] = [r for r in sh.rows if somecriterion(r)]
# save the workbook, with the weeded-out sheet
wb.save('/path/to/workbook_reduced.xlsx')
Может что-то подобное можно сделать с openpyxl
, и если да, то каким образом?
Установка значений ячейки в '' или None не удаляет их, а тем более всю строку. – Cerin
Но вызов 'garbage_collect' удалит оставшиеся пустые строки. –