Guida Didattica · Automazione Office con Python

Automatizzare Excel con Python

Leggi, scrivi e formatta fogli di calcolo Excel in automatico con openpyxl.

0 di 5 passaggi completati

01Fondamenti

Cos'è openpyxl?

openpyxl è una libreria Python per leggere e scrivere file Excel (.xlsx) senza bisogno di avere Excel installato o aperto. Puoi generare report, aggiornare fogli esistenti, applicare formule e formattazioni, tutto via codice.

📗WorkbookL'intero file Excel, che può contenere più fogli.
📋WorksheetUn singolo foglio di lavoro all'interno del file.
🔲CellUna singola cella, identificata da colonna e riga (es. "A1").

Il tuo primo foglio Excel

from openpyxl import Workbook

wb = Workbook()
foglio = wb.active
foglio["A1"] = "Nome"
foglio["B1"] = "Voto"
foglio["A2"] = "Anna"
foglio["B2"] = 8
wb.save("voti.xlsx")

02Concetti Chiave

📗 Workbook e Worksheet▶

Un Workbook è l'intero file Excel; ogni Workbook contiene uno o più Worksheet (fogli). wb.active restituisce il foglio attivo, ma puoi anche crearne di nuovi con nomi personalizzati.

nuovo_foglio = wb.create_sheet("Riepilogo")
🔲 Accesso alle celle▶

Puoi accedere a una cella tramite il suo riferimento (es. "A1") oppure tramite riga e colonna numeriche con .cell(row, column).

foglio["A1"] = "Ciao" foglio.cell(row=1, column=1, value="Ciao") # equivalente
🔁 Scrivere righe con un ciclo▶

Il modo più comune di popolare un foglio è tramite un ciclo, spesso iterando su una lista di dati o un DataFrame Pandas.

dati = [("Anna", 8), ("Luca", 6)] for riga, (nome, voto) in enumerate(dati, start=2): foglio.cell(row=riga, column=1, value=nome) foglio.cell(row=riga, column=2, value=voto)
🎨 Formattazione▶

openpyxl permette di formattare celle: grassetto, colore di sfondo, larghezza colonne, tutto tramite oggetti dedicati come Font e PatternFill.

from openpyxl.styles import Font foglio["A1"].font = Font(bold=True, size=14)
📖 Leggere un file esistente▶

Con load_workbook() puoi aprire un file .xlsx esistente per leggerne o modificarne i dati, senza doverlo ricreare da zero.

from openpyxl import load_workbook wb = load_workbook("voti.xlsx") foglio = wb.active print(foglio["A2"].value)

03Checklist Pratica

Spunta ogni passaggio man mano che lo completi: sbloccherai l'attestato di questa guida al termine.

Esempio per il punto 1

from openpyxl import Workbook

wb = Workbook()
foglio = wb.active
foglio["A1"] = "Nome"
foglio["B1"] = "Voto"
wb.save("voti.xlsx")
1. Crea un foglio con intestazioniUsa Workbook() e scrivi due intestazioni di colonna, come nell'esempio sopra.

Esempio per il punto 2

dati = [("Anna", 8), ("Luca", 6), ("Sara", 9)]
for riga, (nome, voto) in enumerate(dati, start=2):
    foglio.cell(row=riga, column=1, value=nome)
    foglio.cell(row=riga, column=2, value=voto)
wb.save("voti.xlsx")
2. Popola righe con un cicloUsa un ciclo for per scrivere 3 righe di dati, come nell'esempio sopra.

Esempio per il punto 3

from openpyxl.styles import Font

foglio["A1"].font = Font(bold=True, size=12)
foglio["B1"].font = Font(bold=True, size=12)
wb.save("voti.xlsx")
3. Formatta le intestazioni in grassettoUsa Font(bold=True) sulle celle A1 e B1, come nell'esempio sopra.

Esempio per il punto 4

from openpyxl import load_workbook

wb_letto = load_workbook("voti.xlsx")
foglio_letto = wb_letto.active
print(foglio_letto["A2"].value)  # Anna
4. Ricarica e leggi il file salvatoUsa load_workbook() per riaprire il file e leggere una cella, come nell'esempio sopra.
5. Completa il quiz di verificaScendi in fondo alla guida e rispondi correttamente ad almeno l'80% delle domande.

04Glossario Interattivo

Tocca ogni termine per vederne la definizione.

05Quiz di Verifica

06Esercitazioni Pratiche

Esercizio 1

Il registro voti

Crea un file Excel con intestazioni "Nome" e "Voto", poi popola 6 righe di dati con un ciclo for. Formatta le intestazioni in grassetto.

⏱ 25 minuti📦 File .xlsx completo🖥️ Individuale
Esercizio 2

Aggiorna un file esistente

Ricarica il file dell'esercizio 1 con load_workbook(), aggiungi una nuova riga di dati in fondo, e risalva il file.

⏱ 20 minuti📦 File .xlsx aggiornato🖥️ Individuale
Esercizio 3

Trova l'errore: la cella sbagliata

Questo codice scrive nella cella sbagliata: si voleva scrivere in "B2" ma è stato scritto foglio["B20"] = 8. Spiega come individuare e correggere questo tipo di errore di battitura.

⏱ 10 minuti📦 Spiegazione scritta + codice corretto🖥️ Individuale o in coppia

🎓 Attestato di completamento

Completa tutti i 5 passaggi della checklist per sbloccare il tuo attestato in PDF.

0 / 5 passaggi completati