=SE(B2>=50;"Pass";"Fail") controlla se il voto in B2 è almeno 50. Se lo è, la cella mostra Pass; se non lo è, mostra Fail. La funzione SE si chiama IF in Excel inglese, ed è così che la mostra la tabella: =IF(B2>=50,"Pass","Fail").
| A | B | C | |
|---|---|---|---|
| 1 | Student | Score | Result |
| 2 | Ana | 72 | Pass |
| 3 | Ben | 45 | Fail |
| 4 | Chloe | 50 | Pass |
| 5 | Dan | 38 | Fail |
| 6 | Eve | 91 | Pass |
=SE(B2>=50;"Pass";"Fail")Fai clic su C2 per vedere la formula, poi cambia il voto di Ben in B3 in 60: il suo risultato diventa Pass. Chloe ha esattamente 50, e >= significa "50 o più", quindi è promossa. Con > sarebbe bocciata.
Sintassi della funzione SE
=IF(logical_test, value_if_true, value_if_false)
logical_test(test) è qualsiasi confronto o formula che dia VERO o FALSO:B2>=50,C2="Paid",D2<OGGI().value_if_true(se_vero) è ciò che la cella mostra quando il test è VERO.value_if_false(se_falso) è ciò che mostra altrimenti. È facoltativo: omettilo e la cella mostra FALSO quando il test non è superato. Lascia il punto e virgola ma con l'argomento vuoto,=SE(B2>=50;"Pass";), e mostra 0.
Ogni risultato può essere testo tra virgolette doppie ("Pass"), un numero (0), un riferimento di cella (C2) o un'altra formula. Il testo senza virgolette viene letto come un nome, quindi =SE(B2>=50;Pass;Fail) dà #NOME? (in inglese #NAME?).
Gli operatori di confronto sono = (uguale), <> (diverso), >, <, >= e <=. In Excel italiano gli argomenti sono separati dal punto e virgola, perché la virgola è il separatore decimale: =SE(B2>=50;"Pass";"Fail"). Puoi scrivere le formule così anche nella tabella. Google Fogli usa la stessa funzione SE con gli stessi argomenti.
SE con il testo
Un test può confrontare una cella con un testo. Il testo va tra virgolette doppie, e il confronto ignora maiuscole e minuscole.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Order | Region | Free delivery | Exact case |
| 2 | 1001 | North | Yes | Yes |
| 3 | 1002 | South | No | No |
| 4 | 1003 | north | Yes | No |
| 5 | 1004 | East | No | No |
| 6 | 1005 | NORTH | Yes | No |
=SE(B2="North";"Yes";"No")La colonna C dice Yes per North, north e NORTH, perché = non bada a maiuscole e minuscole. Quando contano (codici prodotto, password), usa invece IDENTICO (in inglese EXACT) come test, come nella colonna D: solo la riga che dice esattamente North riceve Yes.
Per verificare qualsiasi cosa tranne un valore, usa <>: =SE(B2<>"North";"Standard";"Free"). Per verificare se una cella contiene una parola da qualche parte al suo interno, SE ha bisogno di RICERCA, spiegata nella pagina sulle funzioni VAL.
SE con un calcolo
I risultati di SE non devono per forza essere testo. Qui ogni venditore guadagna un bonus del 5% sulle vendite oltre 1.000, e niente sotto quella soglia:
| A | B | C | |
|---|---|---|---|
| 1 | Rep | Sales | Bonus |
| 2 | Ana | $1,400 | $70 |
| 3 | Ben | $800 | $0 |
| 4 | Chloe | $1,000 | $0 |
| 5 | Dan | $2,600 | $130 |
| 6 | Eve | $1,150 | $58 |
=SE(B2>1000;B2*5%;0)Ana riceve $70 (il 5% di 1.400) e Ben riceve $0. Chloe ha venduto esattamente 1.000, e il test è "maggiore di 1.000", quindi riceve anche lei $0. Cambia la formula di C2 in =SE(B2>=1000;B2*5%;0) e il suo bonus diventa $50.
Il test può anche confrontare due celle, =SE(B2>C2;"Over target";"Under target"), oppure una cella con un calcolo, =SE(B2>MEDIA($B$2:$B$6);"Above average";"").
SE una cella è vuota
B2="" è VERO quando B2 è vuota. Usalo per saltare le righe che non hanno ancora dati, così la colonna delle formule non si riempie di zeri:
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Item | Qty | Price | Total | Status |
| 2 | Pens | 10 | $1.50 | $15.00 | Ordered |
| 3 | Paper | $4.20 | Not ordered | ||
| 4 | Ink | 2 | $18.00 | $36.00 | Ordered |
| 5 | Tape | $2.80 | Not ordered | ||
| 6 | Clips | 5 | $0.90 | $4.50 | Ordered |
=SE(B2="";"";B2*C2)"" (due virgolette doppie senza nulla in mezzo) è testo vuoto, quindi Paper e Tape non mostrano nulla nella colonna D. Scrivi una quantità in B3 e il totale compare. La colonna E verifica il contrario con <>"", "non è vuota".
Una cella che contiene ="" sembra vuota ma per VAL.VUOTO non lo è. La differenza conta quando altre formule leggono la colonna: per esempio CONTA.VALORI la conta.
SE con due condizioni
SE accetta un solo test. Per richiedere due cose insieme, metti E dentro il test; per accettarne una delle due, usa O:
=IF(AND(B2>=50,C2>=50),"Pass","Fail")
=IF(OR(B2="North",B2="South"),"Zone 1","Zone 2")
In Excel italiano: =SE(E(B2>=50;C2>=50);"Pass";"Fail") e =SE(O(B2="North";B2="South");"Zone 1";"Zone 2"). Entrambe sono spiegate con esempi dal vivo nella pagina su E e O. Per tre o più risultati possibili (A, B, C, F), annida un SE dentro un altro (SE annidati) oppure usa PIÙ.SE.
Esercizio: riordinare o no
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Item | Stock | Minimum | Status |
| 2 | Pens | 12 | 20 | |
| 3 | Paper | 30 | 25 | |
| 4 | Tape | 15 | 12 | |
| 5 | Ink | 8 | 10 |
Tocca a te: In D2, mostra "Reorder" quando la giacenza in B2 è sotto il minimo in C2, altrimenti mostra "OK". La formula viene copiata fino a D5.
| A | B | C | |
|---|---|---|---|
| 1 | Rep | Sales | Bonus |
| 2 | Ana | $1,250 | |
| 3 | Ben | $600 | |
| 4 | Chloe | $2,300 |
Tocca a te: In C2, restituisci un bonus pari al 10% delle vendite in B2 quando le vendite superano 1000, e 0 altrimenti. La formula viene copiata fino a C4.
Errori comuni con SE
Virgolette attorno a un numero. =SE(B2>"50";"High";"Low") confronta B2 con il testo "50", non con il numero 50. Excel mette ogni numero sotto ogni testo, quindi il test è FALSO per qualsiasi numero in B2 e la formula dice sempre Low. Scrivi i numeri senza virgolette: B2>50.
Usare ==. Il test di uguaglianza di Excel è un solo =. Se scrivi =SE(B2=="Paid";"Yes";"No"), Excel rifiuta la formula con il messaggio "Si è verificato un problema con questa formula".
Numeri memorizzati come testo. Se B2 contiene '12 (testo che sembra un numero, spesso da un'importazione), B2>=50 confronta un testo con un numero. Il testo conta sempre come più grande, quindi il test è VERO e 12 viene promosso. Converti prima la colonna; la pagina sulla conversione da testo a numero spiega come.
Aspettarsi VERO come testo. =SE(B2>=50;"VERO";"FALSO") restituisce le parole come testo, che altre formule non possono usare come valori logici. Se vuoi VERO e FALSO, non ti serve affatto SE: =B2>=50 li restituisce direttamente.
Parentesi di chiusura mancanti. Ogni SE apre una parentesi e ha bisogno della propria ). Mentre modifichi, Excel mostra ogni coppia di parentesi con un colore diverso, il che rende facile individuare quella mancante.
Domande frequenti
Come si scrive una formula SE in Excel?
Scrivi =SE(test;se_vero;se_falso). Per esempio =SE(B2>=50;"Pass";"Fail") mostra Pass quando B2 è almeno 50 e Fail altrimenti. I risultati di testo vanno tra virgolette doppie, i numeri e i riferimenti di cella no.
Perché la mia formula SE restituisce FALSO?
Hai omesso il terzo argomento. =SE(B2>=50;"Pass") restituisce FALSO quando il test non è superato. Aggiungi un valore per quel caso, per esempio "" per mostrare una cella vuota: =SE(B2>=50;"Pass";"").
La funzione SE distingue maiuscole e minuscole?
No. =SE(B2="North";"Yes";"No") restituisce Yes per North, north e NORTH. Per confrontare le maiuscole esatte, usa IDENTICO come test: =SE(IDENTICO(B2;"North");"Yes";"No").
Come faccio a far lasciare a SE una cella vuota?
Restituisci una stringa di testo vuota, due virgolette doppie: =SE(B2="";"";B2*C2) non mostra nulla quando B2 è vuota e il prodotto altrimenti. La cella contiene comunque una formula, quindi VAL.VUOTO su di essa restituisce FALSO.
SE può controllare più di una condizione?
Sì. Metti E oppure O dentro il test, =SE(E(B2>=50;C2>=50);"Pass";"Fail"), oppure annida un SE dentro un altro per più di due risultati. In Excel 2019 e versioni successive, PIÙ.SE gestisce più risultati senza annidare.