Excel funzione SE e funzioni nidificate
Funzione SE con E, O, NON, FALSO, VERO
Autore: Andrea Pacchiarotti
Ultimo aggiornamento: 14 Gennaio 2023
Categoria: Microsoft Office Excel Funzione SE

La funzione SE di Microsoft Office è probabilmente una delle più conosciute di Excel, essa permette di eseguire confronti logici tra un valore e un risultato previsto. Esiste la semplice funzione SE, ma anche altre che ne fanno uso come ad esempio le funzioni di conteggio CONTA.SE, CONTA.PIÚ.SE, le funzioni di somma SOMMA.SE, SOMMA.PIÚ.SE e altre ancora, oltre ovviamente a tutte le nidificate (dalla versione Excel 2007 è possibile utilizzare fino a 64 funzioni SE nidificate, prima erano 7).
Insieme alle funzioni E, O, FALSO, VERO, NON, SE.ERRORE, SE.NON.DISP, il SE fa parte delle formule logiche di Excel.
Come tutte le altre funzioni di Excel è possibile inserirla a mano o sfruttando una finestra di riferimento.
Partiamo con Excel funzione SE e funzioni nidificate!
Sommario Funzione SE
- Funzione SE
- Operatori di confronto
- Errori comuni nei risultati
- Esempi
- SE con le date
- Esempi
- SE con VAL.VUOTO, VAL.NUMERO, VAL.TESTO
- Esempi
- Funzioni SE.ERRORE, SE.NON.DISP
- Esempi
- Conclusioni
Funzione SE
La funzione SE verifica se un valore rispetta una condizione impostata e dà un risultato se la condizione restituisce VERO e un altro risultato se restituisce FALSO.
Ad esempio, =SE(A1>10,"Maggiore di 10","Minore o uguale a 10") restituisce il testo "Maggiore di 10" se il valore contenuto in A1 è maggiore di 10 e il testo "Minore o uguale a 10" se il valore contenuto in A1 è minore o uguale a 10.
SINTASSI
=SE(test;severo;sefalso)
- test. La condizione da verificare sul valore sotto forma di testo logico. Prevede l'utilizzo degli operatori di confronto: >, <, >=, <=, =, <>
- severo. Facoltativo. Valore che viene restituito se l'argomento test risulta VERO.
- sefalso. Falcoltativo. Valore che viene restituito se l'argomento test risulta FALSO.
Se l'esito del SE corrisponde a una parola o frase che deve comparire nella cella, tale testo va tra virgolette, come nell’esempio precedente: =SE(A1>10,"Maggiore di 10","Minore o uguale a 10"). Se invece deve comparire un numero questo non va tra virgolette: tale numero può essere scritto o scaturire da una funzione. Può anche comparire uno spazio “ “ o il valore inserito in un’altra cella se imposto nel severo o nel sefalso il riferimento di cella. Se ometto il severo o il sefalso comparirà rispettivamente la parola VERO (o 0) o FALSO, il che non permette di personalizzare la risposta, dunque è sempre meglio utilizzare questi due argomenti anche se facoltativi.
Operatori di confronto
Per poter utilizzare la funzione SE è necessario effettuare nel primo argomento un confronto; ciò è possibile attraverso l'uso degli operatori di confronto che sono:
- = uguale
- > maggiore
- < minore
- >= maggiore uguale
- <= minore uguale
- <> diverso
Errori comuni nei risultati
Se nella cella del risultato si ottiene:
- 0 (zero): non è stato specificato un argomento per severo o sefalso; aggiungere del testo ai due argomenti o aggiungere vero o falso all'argomento
- #NOME?: probabilmente la formula non è stata digitata correttamente
Esempi di funzione SE

Esercizi:
- Far apparire da C2 a C5 Risparmio se la PREVISIONE risulta maggiore del PREZZO FINALE, altrimenti far apparire Perdita
=SE(A2>B2;"Risparmio";"Perdita") - Far apparire da C2 a C5 Diverso se la PREVISIONE risulta diversa del PREZZO FINALE, altrimenti lascia vuota la cella
=SE(A2<>B2;"Diverso";"") - Far apparire in D2 Iniziare i lavori se la somma del PREZZO FINALE risulta inferiore a 10.000 euro, altrimenti far apparire Non iniziare i lavori
=SE(SOMMA(C4:C7)<=10000;"Iniziare i lavori";"Non iniziare") - Far apparire in D3 il Costo previsionale medio senza usare la funzione MEDIA
=SE(SOMMA(A4:A7);SOMMA(A4:A7)/CONTA.NUMERI(A4:A7))

Esercizio:
- Far apparire da B2 a B6 Sì se il Fatturato raggiunto dall’agente è stato pari almeno a C2, altrimenti far apparire No (ripassa i riferimenti di Excel)
=SE(A2>=C$2;”Sì”;”No”)

Esercizi:
- Far apparire in D3 Ammesso, se l’allievo ha ottenuto almeno 6 sia allo scritto che all’orale, altrimenti far apparire Respinto
=SE(E(C13>=6;D13>=6);"Ammesso";"Respinto") - Far apparire in E3 Ammesso, se l’allievo ha ottenuto almeno 6 nello scritto o nell’orale, altrimenti far apparire Respinto
=SE(O(C13>=6;D13>=6);"Ammesso";"Respinto") - Far apparire in G3 Ammesso, se l’allievo ha ottenuto almeno 6 nello scritto, nell’orale e nella pratica, altrimenti far apparire Respinto
=SE(E(B3>=6;C3>=6;F3>=6);"Ammesso";"Respinto") - Far apparire in H3 Promosso, se la media è da 6 in su, Rimandato se è tra 5,5 ed inferiore a 6, Respinto se inferiore a 5,5
=SE(MEDIA(B3;C3;F3)>=6;"Promosso";SE(MEDIA(B3;C3;F3)<5,5;"Respinto";"Rimandato")
Per testare diversi gruppi di più condizioni è necessario l’impiego contemporaneo di SE, E, O.
Basta esprimere le due condizioni con E e racchiuderle all’interno di O in quanto non devono essere soddisfatte contemporaneamente, ad esempio se l'allievo per essere Promosso deve conseguire almeno 6 all'orale e alla pratica o almeno 6 all'orale e allo scritto, si avrà:
=SE(O(E(B3>=6;F3>=6);E(B3>=6;C3>=6));"Ammesso";"Respinto")
Esercizio:
- Far apparire da B2 a B6 A se il voto va da 90 in su, B da 80 a 89, C da 70 a 79, D da 60 a 69, E da 0 a 59
=SE(A2>89;"A";SE(A2>79;"B";SE(A2>69;"C";SE(A2>59;"D";SE(A2>=0;"E")))))
Occorre quest’ordine. È possibile annidare fino a 64 funzioni SE come argomenti severo e sefalso per creare test più elaborati

Esercizio:
- Far apparire da C2 a C5 lo Stipendio netto ottenuto detraendo dallo Stipendio lordo la relativa percentuale in base allo scaglione
=SE(B2>=40000;B2-B2*7,5/100;SE(B2>25000;B2-B2*5/100;SE(B2>20000;B2-B2*2,5/100;SE(B2<=20000;B2-B2*1,5/100))))
Occorre quest’ordine

Esercizio:
- Far apparire da E2 ad E6 Peso ideale se il Peso oscilla tra 78 e 82, Sovrappeso da 83 in su e Sottopeso da 77 in giù
=SE(E(B2>=78;B2<=82);"Peso ideale";SE(B2>=83;"Sovrappeso";SE(B2<=77;"Sottopeso")))
=SE(E(B2>=78;B2<=82);"Peso ideale";SE(B2>=83;"Sovrappeso";"Sottopeso"))
SE con le date
Differentemente da altre funzioni di Excel, SE non riconosce le date considerandole stringhe di testo, non è dunque possibile usarle direttamente nei test logici, ad esempio A1>8/10/2018, ma funzionano solo se all’interno della funzione DATA.VALORE.

In C2: =SE(B2<DATA.VALORE(“8/10/2018”);”Imballato”;”Da imballare”)
Se la condizione si basa sulla data corrente si può usare la funzione OGGI():
=SE(B2<OGGI(); "Completato"; "In arrivo")
In D2: =SE(B2-OGGI()>30;"Da imballare";"") per date che si verificheranno a più di 30 giorni da oggi
In E2: =SE(OGGI()-B2>30;"Imballato";"") per date che si sono verificati più di 30 giorni fa
In F2: =SE(B2-OGGI()>30;"Da imballare";SE(OGGI()-A2>30;"Imballato";"")) per avere entrambe le indicazioni nella stesso campo
SE con VAL.VUOTO, VAL.NUMERO, VAL.TESTO
Il SE con le funzioni VAL.VUOTO, VAL.NUMERO e VAL.TESTO servono quando si ha a che fare con celle vuote o non vuote, celle con numeri e celle con testo.
Riguardo l'esempio dell'immagine precedente e volendo contrassegnare come:
- Ordine completato una data che è stata valorizzata (in questo caso lo sono tutte), siccome non ci sono stringhe di lunghezza zero, si può indifferentemente usare:
=SE(B2<>""; "Ordine completato"; "")
=SE(VAL.VUOTO(B2)=FALSO; "Ordine completato"; "") - Testo, Numero, Vuoto rispettivamente le celle contenenti testo, numeri o nulla, si userà:
=SE(VAL.TESTO(B2);"Testo";SE(VAL.NUMERO(B2);"Numero";SE(VAL.VUOTO(B2);"Vuoto";"")))
Funzioni SE.ERRORE, SE.NON.DISP
Catturano gli errori generati dalle formule restituendo un valore che si può specificare.
SE.ERRORE gestisce tutti gli errori di Excel, tra cui #VALORE!, #N/D, #NOME?, #RIF!, #NUM!, #DIV/0!, #NULL!
SE.NON.DISP. solo negli errori #N/D.
I messaggi d’errore in Excel sono introdotti dal simbolo di cancelletto # (a parte l’errore di riferimento circolare) e appaiono perché non vengono rispettate determinate caratteristiche richieste dalle funzioni, nella cella in cui si è scritta la funzione comparirà così un errore di:
- #VALORE! quando il tipo dati fornito non corrisponde a quello atteso dalla funzione, ad esempio la somma di un valore testuale con uno numerico
- #RIF! quando un riferimento di cella è stato eliminato o spostato
- #DIV/0! quando si tenta di dividere per zero, il che non è possibile
- #NOME? quando si sbaglia il nome di una formula o non si racchiude una stringa tra virgolette o si sbaglia a scrivere un riferimento di cella
- #NULLO! quando Excel non riesce a capire un intervallo di cella perché per esempio si inserisce uno spazio tra gli argomenti
- #N/D quando una funzione non trova il valore richiesto
- #NUM! quando si dà un numero invalido in un argomento perché ad esempio si fornisce un numero negativo anziché positivo
- ###### è un falso errore e sta a significare che una colonna (o campo) non è abbastanza larga o si sono usate date o ore negative
- Riferimento circolare: si ha se una formula adopera come argomento la cella in cui si sta digitando la formula stessa, es. in A5 scrivo =MEDIA(A1:A10). L’errore non è introdotto da un cancelletto #, ma da una finestra
SINTASSI
SE.ERRORE(valore;se_errore)
SE.NON.DISP.(valore;se_nd)
- valore. Argomento in cui verificare la presenza di un errore
- se_errore. Valore da restituire se la funzione restituisce uno tra i seguenti errori: #N/D, #VALORE!, #RIF!, #DIV/0!, #NUM!, #NOME? o #NULLO!
- se_nd Valore da restituire se la funzione restituisce l'errore #N/D

Esercizio:
- Ottenere la percentuale di unità vendute
- 30 diviso 200 non dà errori, la funzione restituisce il risultato 15%
=SE.ERRORE(B2/A2; "Spiacente, è stato riscontrato un errore") - 0 diviso 100 non dà errori, la funzione restituisce il risultato 0%
=SE.ERRORE(B3/A3; "Spiacente, è stato riscontrato un errore")
- 20 diviso 0 dà errore di divisione per 0, la funzione restituisce quanto scritto nell'argomento se_errore ovvero Errore
=SE.ERRORE(B4/A4; "Spiacente, è stato riscontrato un errore")
- 30 diviso 200 non dà errori, la funzione restituisce il risultato 15%
Conclusioni
Dopo aver visto tutti questi usi della funzione logica SE, si potrebbe pensare di aver esaurito l'uso tipico e ripetuto che se ne fa, ma in realtà le sfaccettature del SE sono infinite per cui non ci si scoraggi e si punti sempre al massimo fino a risolvere le innumerevoli situazioni che richiedono la verifica di una condizione.
Mi auguro sia stato utile leggere Excel funzione SE e funzioni nidificate.