MS Office¶
Lire et écrire un fichier Excel en Python peut se faire avec la bibliothèque openpyxl, qui permet de manipuler des fichiers .xlsx de manière native. Elle permet de lire, écrire, modifier des cellules, des feuilles, et même de formater le contenu.
Exemple de lecture¶
from openpyxl import load_workbook
wb = load_workbook('exemple.xlsx')
ws = wb.active
for row in ws.iter_rows(values_only=True):
print(row)Exemple d’écriture¶
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.append(['Nom', 'Âge'])
ws.append(['Alice', 30])
ws.append(['Bob', 25])
wb.save('exemple.xlsx')Exercice¶
Solution to Exercise 1 #
from openpyxl import load_workbook, Workbook
# 1. Lecture du fichier Excel
wb = load_workbook('users.xlsx')
ws = wb.active
# 2. Lecture des données dans une liste
rows = list(ws.iter_rows(min_row=2, values_only=True))
print("Utilisateurs existants :")
for row in rows:
print(row)
# 3. Ajout d'un nouvel utilisateur
rows.append((4, 'David', 'david@example.com'))
# 4. Bonus : tri par nom
rows.sort(key=lambda x: x[1]) # tri par nom (colonne 1)
# 5. Réécriture du fichier
wb = Workbook()
ws = wb.active
ws.append(['id', 'name', 'email']) # en-têtes
for row in rows:
ws.append(row)
wb.save('users.xlsx')
print("\nNouvel utilisateur ajouté et fichier mis à jour.")