Calcolatore Condizionale per Foglio Elettronico
Inserisci i tuoi dati per generare automaticamente la formula SE corretta per Excel o Google Sheets
Risultato
Guida Completa: Come Mettere il “SE” sul Foglio Calcolatore
La funzione SE (IF in inglese) è una delle più potenti e versatili nei fogli di calcolo come Excel e Google Sheets. Questa guida ti insegnerà tutto ciò che devi sapere per utilizzare al meglio le funzioni condizionali, dai concetti base alle tecniche avanzate di nidificazione.
1. Cos’è la funzione SE e come funziona
La funzione SE valuta una condizione e restituisce un valore se la condizione è vera e un altro valore se è falsa. La sintassi di base è:
=SE(condizione; valore_se_vero; valore_se_falso)
In Excel inglese:
=IF(logical_test; value_if_true; value_if_false)
2. Esempi pratici di base
- Confronto numerico:
=SE(A1>100; "Superato"; "Non superato") - Confronto testuale:
=SE(A1="Sì"; "Attivo"; "Non attivo") - Verifica cella vuota:
=SE(A1=""; "Vuoto"; "Non vuoto") - Confronto date:
=SE(A1>DATA(2023;1;1); "Nuovo"; "Vecchio")
3. Funzioni SE nidificate (annidate)
Puoi combinare più funzioni SE per gestire condizioni multiple:
=SE(A1>90; "A";
SE(A1>80; "B";
SE(A1>70; "C";
SE(A1>60; "D"; "F"))))
Attenzione: Excel permette fino a 64 livelli di nidificazione, ma oltre 3-4 livelli la formula diventa difficile da gestire. In questi casi è meglio usare la funzione SCEGLI o CERCA.VERT.
4. Funzioni alternative alla SE nidificata
| Funzione | Descrizione | Esempio | Vantaggi |
|---|---|---|---|
| SCEGLI | Seleziona un valore da un elenco in base a un indice | =SCEGLI(A1; "Rosso"; "Verde"; "Blu") |
Più leggibile con molte condizioni |
| CERCA.VERT | Cerca un valore in una tabella | =CERCA.VERT(A1; B2:C10; 2; FALSO) |
Ideale per intervalli di valori |
| CONFRONTA + INDICE | Ricerca flessibile in tabelle | =INDICE(C2:C10; CONFRONTA(A1; B2:B10; 1)) |
Più potente di CERCA.VERT |
| SE.ERRORE | Gestisce gli errori | =SE.ERRORE(A1/B1; "Divisione per zero") |
Previene errori visivi |
5. Errori comuni con la funzione SE e come evitarli
- Dimenticare le virgole: Assicurati di separare gli argomenti con il separatore corretto (virgola o punto e virgola a seconda delle impostazioni locali).
- Confronti testuali sensibili alle maiuscole: Usa
MAIUSCoMINUSCper confronti case-insensitive. - Riferimenti circolari: Evita che la formula SE faccia riferimento alla propria cella.
- Troppi livelli di nidificazione: Oltre 7-8 livelli la formula diventa ingestibile.
- Dati non validi: Verifica che i valori di confronto siano del tipo corretto (numero vs testo).
6. Funzioni SE avanzate con operatori logici
Puoi combinare la funzione SE con E, O, NON per condizioni più complesse:
=SE(E(A1>100; B1<50); "Condizione soddisfatta"; "Condizione non soddisfatta")
=SE(O(A1="Sì"; B1="OK"); "Accettato"; "Rifiutato")
=SE(NON(A1=""); "Non vuoto"; "Vuoto")
7. Funzione SE con array (Excel 365 e Google Sheets)
Le versioni moderne supportano array dinamici:
=SE((A1:A10>50)*(B1:B10="Sì"); "OK"; "KO")
Questa formula valuta ogni riga e restituisce un array di risultati.
8. Prestazioni: quando la funzione SE diventa lenta
Con fogli di calcolo molto grandi, le funzioni SE nidificate possono rallentare le prestazioni. Ecco alcuni consigli:
- Usa
CERCA.VERToINDICE+CONFRONTAinvece di SE nidificate per ricerche in tabelle - Limita l'intervallo di riferimento (es.
A1:A1000invece diA:A) - Considera l'uso di Power Query per trasformazioni complesse
- In Excel, usa le Tabelle strutturate per riferimenti più efficienti
9. Confronto tra Excel e Google Sheets
| Caratteristica | Excel | Google Sheets |
|---|---|---|
| Sintassi funzione SE | =SE(cond; val_vero; val_falso) |
=IF(cond; val_true; val_false) |
| Livelli nidificazione massimi | 64 | 100 |
| Supporto array dinamici | Da Excel 365 | Sì (da sempre) |
| Funzione SE.CONDIZIONI | =SE.CONDIZIONI (Excel 2019+) |
Non disponibile (usa =IFS) |
| Gestione errori | =SE.ERRORE |
=IFERROR |
| Prestazioni con grandi dataset | Generalmente più veloce | Può essere più lento con formule complesse |
10. Caso studio: Sistema di valutazione automatico
Immagina di dover creare un sistema di valutazione con queste regole:
- Punteggio ≥ 90: A
- Punteggio ≥ 80: B
- Punteggio ≥ 70: C
- Punteggio ≥ 60: D
- Punteggio < 60: F
Soluzione con SE nidificate:
=SE(A1>=90; "A";
SE(A1>=80; "B";
SE(A1>=70; "C";
SE(A1>=60; "D"; "F"))))
Soluzione alternativa con CERCA.VERT (più efficiente):
=CERCA.VERT(A1; {0, "F"; 60, "D"; 70, "C"; 80, "B"; 90, "A"}; 2; VERO)
11. Funzione SE con formattazione condizionale
La funzione SE nei fogli di calcolo può essere combinata con la formattazione condizionale per risultati visivi:
- Seleziona le celle da formattare
- Vai su "Formattazione condizionale" > "Nuova regola"
- Scegli "Utilizza una formula per determinare le celle da formattare"
- Inserisci una formula tipo
=A1>100 - Imposta il formato desiderato (colore, grassetto, ecc.)
Questo approccio è spesso più efficiente che usare la funzione SE per restituire valori formattati.
12. Funzione SE in combinazione con altre funzioni
Alcune combinazioni utili:
| Combinazione | Esempio | Descrizione |
|---|---|---|
| SE + SOMMA | =SE(SOMMA(A1:A10)>1000; "Obiettivo raggiunto"; "Continua") |
Valuta la somma di un intervallo |
| SE + CONTA.SE | =SE(CONTA.SE(B1:B10; "Sì")>5; "Maggioranza"; "Minoranza") |
Conta occorrenze prima di decidere |
| SE + MEDIA | =SE(MEDIA(A1:A10)>8; "Buona"; "Da migliorare") |
Valuta la media di un gruppo |
| SE + GIORNO.SETTIMANA | =SE(GIORNO.SETTIMANA(A1)=1; "Lunedì"; "Altro giorno") |
Condizioni basate sul giorno della settimana |
| SE + ORA | =SE(ORA(A1)<12; "Mattina"; "Pomeriggio/Serra") |
Condizioni basate sull'orario |
13. Ottimizzazione delle formule SE
Per mantenere i tuoi fogli di calcolo efficienti:
- Usa nomi di intervallo: Assegna nomi agli intervalli per formule più leggibili
- Evita riferimenti volatili: Funzioni come
OGGI()oORA()costringono Excel a ricalcolare continuamente - Limita l'uso di SE nidificate: Oltre 3-4 livelli, considera alternative come
SCEGLIoCERCA.VERT - Usa tabelle strutturate: I riferimenti alle tabelle si adattano automaticamente quando aggiungi righe
- Disattiva il ricalcolo automatico: Durante operazioni complesse, passa a ricalcolo manuale
14. Funzione SE in Power Query
Nei strumenti di Power Query (Excel e Power BI), puoi creare colonne condizionali:
- Apri Power Query Editor
- Seleziona "Aggiungi colonna" > "Colonna personalizzata"
- Inserisci una formula tipo:
if [Punteggio] >= 90 then "A" else if [Punteggio] >= 80 then "B" else "C" - Questo approccio è spesso più efficiente che usare formule SE nel foglio di lavoro
15. Alternative moderne alla funzione SE
Le versioni recenti di Excel offrono alternative più potenti:
- SE.CONDIZIONI (IFS): Permette di valutare multiple condizioni senza nidificazione
=SE.CONDIZIONI(A1>90; "A"; A1>80; "B"; A1>70; "C"; VERO; "D") - SCEGLI.MULTIPLO (SWITCH): Valuta un'espressione contro più valori
=SCEGLI.MULTIPLO(A1; "Rosso"; "1"; "Verde"; "2"; "Blu"; "3"; "Nessun match") - FILTER + SORT: In Excel 365, queste funzioni possono sostituire complessi sistemi di SE nidificate
16. Debugging delle formule SE
Quando una formula SE non funziona:
- Valuta la formula: In Excel, seleziona la cella e vai su "Formule" > "Valuta formula"
- Controlla i tipi di dato: Assicurati che numeri non siano formattati come testo e viceversa
- Verifica i riferimenti: Usa F5 per controllare che gli intervalli siano corretti
- Prova con valori statici: Sostituisci temporaneamente i riferimenti con valori fissi per isolare il problema
- Usa la finestra di controllo: In Excel, "Formule" > "Finestra di controllo" per monitorare più celle
17. Funzione SE in VBA
In Visual Basic for Applications, la funzione SE diventa un'operazione If-Then-Else:
If Cells(1, 1).Value > 100 Then
Cells(1, 2).Value = "High"
Else
Cells(1, 2).Value = "Low"
End If
Per operazioni complesse, le strutture If in VBA sono spesso più efficienti delle formule nel foglio.
18. Funzione SE in Google Apps Script
In Google Sheets, puoi estendere le funzioni con Apps Script:
function customIf(condition, trueValue, falseValue) {
return condition ? trueValue : falseValue;
}
Puoi poi chiamare questa funzione personalizzata nel foglio con =customIf(A1>100; "High"; "Low")
19. Funzione SE e intelligenza artificiale
Gli strumenti moderni come Excel's Ideas o Google's Explore possono suggerire automaticamente formule SE basate sui tuoi dati. Questi strumenti analizzano i pattern nei tuoi dati e propongono formule rilevanti, incluse condizioni logiche.
20. Best practice per l'uso della funzione SE
- Documenta le formule complesse: Aggiungi commenti alle celle con formule SE nidificate
- Testa con casi limite: Verifica il comportamento con valori di confine (es. 0, vuoto, errori)
- Usa formattazione coerente: Mantieni uno stile consistente nelle tue formule
- Considera la manutenibilità: Una formula troppo complessa potrebbe essere difficile da modificare in futuro
- Valuta alternative: Per logiche molto complesse, considera l'uso di tabelle di riferimento invece di formule
- Ottimizza le prestazioni: Limita l'uso di SE volatile (che dipendono da funzioni come ORA() o OGGI())
- Usa nomi descrittivi: Per intervalli e celle importanti nelle tue condizioni