Vorrei creare una versione "ridotta" di un foglio di calcolo Excel (xlsx) (ovvero rimuovendo alcune righe in base ad alcuni criteri) e vorrei sapere se è possibile farlo con openpyxl
.Come eliminare le righe con openpyxl?
In (pythonish) pseudo-codice, quello che voglio fare sarebbe un aspetto simile:
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')
Può qualcosa come questo essere fatto con openpyxl
, e se sì, come?
L'impostazione dei valori di cella su "" o su Nessuno non li elimina, tanto meno l'intera riga. – Cerin
Ma chiamando 'garbage_collect' rimuoverà le righe vuote finali. –