Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Formats de fichiers populaires

APERTO-NOTA

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.")