openpyxl est un module Python qui permet de manipuler les fichiers tableur au format XLS et XLSX (Excel 2010).
Nous allons voir comment cacher des lignes et colonnes et que le petit « + » soit affiché à côté afin de pouvoir facilement afficher/masquer.
Créons un document vierge :
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
Pour grouper et masquer les colonnes C, D, E et F :
# Folding columns from C to F
ws.column_dimensions.group('C', 'F', hidden=True)
Pour grouper et masquer les lignes 5, 6, 7, 8 et 9 :
# Folding rows from 5 to 9
for idx in range(5, 10):
ws.row_dimensions[idx].hidden = True
ws.row_dimensions[idx].outlineLevel = 1
Et pour finir, enregistrons le document :
wb.save('groupes.xlsx')
Sources :
- Documentation officielle : Fold columns (outline) ;
- Stack Overflow : Folding multiple rows with openpyxl.