La funzione IF in Excel
SE (Inglese: IF) prende una decisione: verifica una condizione, poi restituisce un valore se è vera e un altro se è falsa. Superato o non superato, bonus o niente bonus, «In ritardo» o «In orario»: tutto questo si fa con SE (Inglese: IF).
Le condizioni usano operatori di confronto: = (uguale), <> (diverso), >, <, >= e <=. Puoi combinare più condizioni con E (Inglese: AND) e O (Inglese: OR).
Sintassi
=IF(logical_test, value_if_true, [value_if_false])
| Argomento | Cosa significa |
|---|---|
| logical_test | Una condizione TRUE o FALSE, per esempio B2>=50. |
| value_if_true | Cosa restituire quando la condizione è vera. Il testo va tra virgolette doppie. |
| value_if_falsefacoltativo | Cosa restituire quando è falsa. Se lo ometti, SE (Inglese: IF) restituisce FALSE. |
Esempi
1. Superato o non superato
| A | B | C | |
|---|---|---|---|
| 1 | Studente | Punteggio | Risultato |
| 2 | Noa | 72 | Superato |
| 3 | Liam | 48 | |
| 4 | Maya | 91 |
72 è almeno 50, quindi la condizione è vera e SE (Inglese: IF) restituisce «Superato». Copiata in basso, Liam (48) ottiene «Non superato».
2. Calcola un numero solo se una condizione è soddisfatta
| A | B | C | |
|---|---|---|---|
| 1 | Agente | Vendite | Bonus |
| 2 | Dana | 12000 | 600 |
Le vendite sopra 10,000 ottengono un bonus del 5%. 12,000 × 5% = 600; altrimenti il bonus è 0.
3. Più di due risultati: IF annidati
| A | B | C | |
|---|---|---|---|
| 1 | Studente | Punteggio | Risultato |
| 2 | Noa | 72 | |
| 3 | Liam | 48 | |
| 4 | Maya | 91 | A |
Il secondo SE (Inglese: IF) viene eseguito solo quando il primo test è falso. L'ordine conta: controlla prima la fascia più alta. 91 → "A".
4. Due condizioni insieme con AND
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Studente | Punteggio | Presenza | Attestato |
| 2 | Noa | 72 | Sì | Certificato |
E (Inglese: AND) è TRUE solo quando entrambe le condizioni sono vere. Usa O (Inglese: OR) quando basta una delle due.
Errori comuni
Testo senza virgolette, per esempio
=SE(B2>=50;Pass;Fail)dà #NAME?.Correzione: Metti il testo tra virgolette doppie: "Superato".
Numeri tra virgolette, per esempio "100". Il risultato è testo e non si somma in SOMMA (Inglese: SUM).
Correzione: Scrivi i numeri senza virgolette:
=SE(B2>10000;100;0).IF annidati nell'ordine sbagliato. Testare B4>=75 prima di B4>=90 dà «B» a tutti quelli sopra 75.
Correzione: Verifica per primo la condizione più severa, oppure usa PIÙ.SE (Inglese: IFS).
Domande frequenti
Quanti IF posso annidare?
Excel ne permette fino a 64, ma oltre 3 diventano difficili da leggere. Usa invece PIÙ.SE (Inglese: IFS), una tabella di ricerca con CERCA.X (Inglese: XLOOKUP), oppure CERCA.VERT (Inglese: VLOOKUP) con una corrispondenza approssimativa.
Come verifico se una cella è vuota?
Confrontala con virgolette vuote: =SE(B2="";"Mancante";"OK").
Il confronto di testo in IF distingue maiuscole e minuscole?
No, «sì» e «Sì» sono uguali. Usa IDENTICO (Inglese: EXACT) dentro il test quando conta distinguere maiuscole e minuscole.
Funzioni correlate
- IFERRORIFERROR restituisce un valore che scegli quando una formula produce un errore come #N/A o #DIV/0!, altrimenti il risultato normale.
- COUNTIFCOUNTIF conta le celle di un intervallo che soddisfano una condizione: un testo, un numero, un confronto come ">100" o un carattere jolly.
- SUMIFSUMIF somma i valori che soddisfano una condizione, come tutte le vendite di una regione o tutti gli importi sopra 100.