Programma
Se hai mai provato a costruire una formula logica complessa in Excel, sai quanto possa diventare disordinata. La cosa più difficile con le istruzioni IF() annidate è capire quale condizione va dove.
Ecco perché Excel ha introdotto una nuova funzione chiamata IFS(). È un modo più pulito e semplice per verificare più condizioni senza farti venire il mal di testa. Ti guiderò nel funzionamento di IFS(), con esempi e consigli per aiutarti a usarla con sicurezza.
Che cos’è la funzione IFS() in Excel?
La funzione IFS() ci aiuta a verificare più condizioni contemporaneamente. Scorre ciascuna condizione nell’ordine in cui la scrivi e ti restituisce il risultato della prima che è TRUE.
È quindi un modo più semplice per scrivere quello che prima era un insieme disordinato di formule IF() annidate. Invece di impilare più funzioni IF() una dentro l’altra, IFS() elenca tutte le tue condizioni in un unico punto. In totale, puoi aggiungere fino a 127 coppie condizione–risultato, anche se difficilmente ti serviranno così tante condizioni.
Come funziona la funzione IFS()
La sua sintassi è:
=IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2]…)
Qui:
-
logical_test1(obbligatorio) è la prima condizione. -
value_if_true1(obbligatorio) restituisce il risultato se logical_test1 èTRUE. -
Le restanti 126 argomentazioni
logical_testevalue_if_truesono facoltative.
Come usare IFS() in Excel
La funzione IFS() restituisce risultati diversi in base alle condizioni. Puoi usare operatori logici come =, <, >, <= e >= per costruire la tua logica. Ecco come iniziare.
Opzione 1: usa la Creazione guidata Formula
Per usare la Creazione guidata delle formule:
-
Fai clic sulla cella in cui vuoi la formula.
-
Vai alla scheda Formule e scegli Inserisci funzione.
-
Nella casella di ricerca, digita
IFSe fai clic su Vai. -
Seleziona
IFS, fai clic su OK e poi inserisci le tue condizioni e i relativi risultati. -
Fai di nuovo clic su OK per applicare la formula.
È un modo rapido per costruire una formula senza doverla digitare a mano.

Usa la Creazione guidata delle formule per applicare la funzione IFS(). Immagine dell’autore.
Opzione 2: scriverla manualmente
Puoi anche scrivere la formula manualmente. Probabilmente è quello che fa la maggior parte delle persone. Ti basta digitare =IFS( nella cella e costruire la tua logica passo dopo passo. Supponiamo che tu stia assegnando metodi di spedizione in base ai tempi di consegna:
-
Se sono 2 giorni o meno, sarà
Express -
Se sono da 3 a 5 giorni, sarà
Standard
Per questo, ecco la formula:
=IFS(B2<=2, "Express", B2<=5, "Standard")

Applica la formula IFS() in una cella. Immagine dell’autore.
Puoi anche copiare la formula nelle altre celle. Per farlo, trascina il piccolo quadrato nell’angolo inferiore della cella (il quadratino di riempimento). Questo applicherà la formula lungo la colonna. Oppure fai doppio clic per riempire automaticamente in base ai tuoi dati.
Consiglio pro: Excel aggiorna automaticamente i riferimenti di cella quando copi una formula. Se vuoi mantenere un riferimento fisso, trasformalo in un riferimento assoluto premendo F4 (cambia A1 in $A$1).

Copia la formula verso il basso usando il quadratino di riempimento. Immagine dell’autore
Ma in una cella viene generato l’errore #N/A perché nessuna condizione è soddisfatta. Per risolvere, aggiungi una condizione finale usando TRUE alla fine della formula. Funziona come un piano di riserva: intercetta tutto ciò che non ha trovato corrispondenza prima e restituisce un risultato predefinito.
=IFS(B2<=2, "Express", B2<=5, "Standard", TRUE, "Economy")
Questo elimina l’errore #N/A e restituisce il valore predefinito.

Gestisci l’errore #N/A usando la condizione ELSE finale. Immagine dell’autore.
Esempi di IFS() in azione
Ora vediamo alcuni esempi reali, in cui la maggior parte delle persone usa questa funzione.
Assegnazione dei voti
Puoi usare IFS() per convertire i punteggi degli studenti in voti letterali. Supponiamo che tu abbia un elenco di studenti e i loro punteggi ai test. Puoi usare questa formula per trasformare quei numeri in voti:
=IFS(C5<60,"F", C5<70,"D", C5<80,"C", C5<90,"B", C5>=90,"A")
Ecco cosa fa:
-
Se il punteggio è inferiore a 60, restituisce
F. -
Se è inferiore a 70, restituisce
D. -
Se è inferiore a 80, è un
C. -
Se è inferiore a 90, ottieni un
B. -
Se è 90 o più, è un
A.
Excel verifica ogni condizione in ordine e si ferma non appena ne trova una che è TRUE. Anche se più di una condizione potrebbe applicarsi, conta solo la prima corrispondenza.
Assegna voti agli studenti usando IFS(). Immagine dell’autore.
Gestione errori con TRUE
Puoi anche usare IFS() per mostrare un messaggio personalizzato in base a diversi codici di stato invece di lasciare che Excel mostri un errore #N/A. Per esempio, se hai un elenco di codici e vuoi mostrare un messaggio in base a ciascuno, ecco una formula che potresti usare:
=IFS(A2=100,"OK", A2=200,"Warning", A2=300,"Error", TRUE,"Invalid")
Ecco come funziona:
-
Se il codice è 100, mostra
OK. -
Se è 200, mostra
Warning. -
Se è 300, mostra
Error. -
Se non corrisponde a nessuno di questi, mostra
Invalid.
Quell’ultima parte è importante. Visualizzerà il messaggio in base al codice. Se non vengono trovate corrispondenze esatte, l’ultima condizione TRUE funge da fallback e restituisce Invalid.

Mostra un messaggio in base al codice usando la funzione IFS(). Immagine dell’autore.
Etichette testuali condizionali
Puoi anche usare IFS() per classificare elementi in categorie come frutta, verdura o bevande e tenere traccia man mano che se ne aggiungono di nuovi.
Ecco una semplice formula per farlo:
=IFS(A2="Grapes","Fruit", A2="Broccoli","Green Vegetable", A2="Tea","Beverage", TRUE,"Misc")
Ecco cosa fa:
-
Se l’elemento è
Grapes, mostraFruit. -
Se è
Broccoli, mostraGreen Vegetable. -
Se è
Tea, mostraBeverage. -
Se non corrisponde a nessuno di questi, mostra
Misc.
Quell’ultima riga (con TRUE) è la tua opzione di riserva. Intercetta tutto ciò che non rientra nelle altre categorie.

Classifica l’elemento usando IFS(). Immagine dell’autore.
Financial modeling
Possiamo usare IFS() anche per scopi di modellazione finanziaria. Vediamo due esempi comuni:
Applicare fasce di sconto
Puoi usare IFS() per assegnare uno sconto in base all’importo totale degli acquisti di un cliente.
=IFS(B2>=500,"20% Discount", B2>=300,"10% Discount", B2>=100,"5% Discount", TRUE,"No Discount")
Ecco come funziona:
-
Se l’importo è maggiore o uguale a
500, restituisce20% Discount -
Se l’importo è maggiore o uguale a
300, restituisce10% Discount. -
Se l’importo è maggiore o uguale a
100, restituisce5% Discount. -
Se l’importo è inferiore a
100, la condizione finaleTRUErestituisceNo Discount.

Applica sconti usando IFS(). Immagine dell’autore.
Calcolare i giorni di ferie
Puoi anche calcolare quanti giorni di ferie spettano a un dipendente, in base all’anzianità in azienda. Per farlo, usa la formula seguente:
=IFS(B2>=10,"30 Days", B2>=5,"20 Days", B2>=1,"10 Days", TRUE,"No Leave")
Ecco come si suddivide:
-
10o più anni significano30 Daysdi ferie. -
Da
5a9anni significano20 Days. -
Da
1a4anni significano10 Days. -
Meno di 1anno significaNo Leave.

Assegna giorni di ferie in base agli anni di servizio usando IFS(). Immagine dell’autore.
Conversione dei dati
Puoi anche usare IFS() per convertire le dimensioni dei file dai byte in unità più leggibili come KB, MB o GB:
=IFS(B2<1024, B2 & " Bytes", B2<1048576, ROUND(B2/1024,1) & " KB", B2<1073741824, ROUND(B2/1048576,1) & " MB", TRUE, ROUND(B2/1073741824,1) & " GB")
Questa formula mostra:
-
Bytesper valori inferiori a1024 -
KBper valori inferiori a1MB -
MBper valori inferiori a1GB -
GBper qualsiasi valore più grande

Converti la dimensione del file da byte a KB, MB, GB usando IFS(). Immagine dell’autore.
IFS() vs. IF() vs. IF() annidati
Quando lavori con più condizioni in Excel, hai tre opzioni: IF(), IF() annidati o la funzione IFS(). Ognuna funziona in modo diverso, quindi ecco come scegliere quella giusta.
Confronto in termini di leggibilità
Se stai verificando solo una o due condizioni, la funzione base IF() è perfetta. È veloce, semplice e fa il suo dovere. Ma le cose si complicano quando provi a controllare più condizioni. È allora che iniziamo a impilare funzioni IF() una dentro l’altra, rendendo la formula più difficile da leggere e ancora più difficile da modificare in seguito.
Ecco un esempio:
=IF(A1<60,"F",IF(A1<70,"D",IF(A1<80,"C",IF(A1<90,"B","A"))))
Funziona, ma non è facile da seguire. Tutte quelle parentesi rendono difficile lettura e aggiornamento.

Gli IF() annidati sono difficili da leggere e capire. Immagine dell’autore.
Ora guarda la stessa logica usando invece IFS():
=IFS(A1<60,"F", A1<70,"D", A1<80,"C", A1<90,"B", A1>=90,"A")
Questa è molto più semplice alla vista. Ogni condizione è associata direttamente a un risultato senza annidamenti e senza sovraccarico di parentesi. Quindi, se vuoi una formula facile da leggere, capire e correggere in seguito, IFS() è un’ottima scelta.

IFS() è molto più facile da leggere e capire. Immagine dell’autore.
Considerazioni sulle prestazioni
La funzione IFS() verifica ogni condizione che le fornisci, anche se ha già trovato una corrispondenza. Quindi, se elenchi cinque condizioni, Excel le valuta comunque tutte e cinque.
Ma le funzioni IF() annidate sono un po’ più intelligenti. Usano il “short-circuiting”, il che significa che smettono di controllare non appena trovano la prima condizione TRUE. Questo fa risparmiare un po’ di tempo in fogli molto grandi con tante formule.
Confronto rapido: quando usare cosa
Ecco un rapido confronto in tabella per aiutarti a capire quando usare IF(), IF() annidati e IFS():
|
Caratteristica |
IF() |
IF() annidati |
IFS() |
|
Ideale per |
1–2 condizioni semplici |
Logiche complesse (con focus sulle prestazioni) |
Condizioni multiple (con focus sulla leggibilità) |
|
Leggibilità |
Molto facile |
Più difficile da seguire (molte parentesi) |
Pulita e facile da scansionare |
|
Modifica successiva |
Semplice |
Può essere complicata (parentesi ovunque) |
Facile da aggiornare |
|
Prestazioni |
Veloce |
Leggermente più veloce (usa short-circuiting) |
Leggermente più lenta (controlla tutte le condizioni) |
|
Esempio d’uso |
Verifiche sì/no di base |
Prezzi a scaglioni in fogli enormi |
Valutazioni, categorie, messaggi di fallback |
IFS vs. SWITCH()
IFS() e SWITCH() verificano entrambi più condizioni in un’unica formula autonoma, ma funzionano in modo diverso. Ecco un confronto dettagliato tra i due:
|
Caratteristica |
IFS() |
SWITCH() |
|
Ideale per |
Condizioni diverse usando logica (>, <, =) |
Un valore confrontato con più corrispondenze esatte |
|
Supporta operatori logici? |
Sì, è ottimo per intervalli o disuguaglianze |
No, funziona solo con valori esatti |
|
Stile di sintassi |
Ripete la condizione completa ogni volta |
Più pulito perché usa un’espressione confrontata con valori |
|
Esempio d’uso |
Valutare studenti in base al punteggio (es. 90+, 75–89...) |
Mappare codici a categorie (es. 1 = Nord, 2 = Sud...) |
|
Opzione di fallback/predefinita |
Usa TRUE alla fine per un caso “prendi-tutto” |
Aggiungi un valore finale (senza condizione) come predefinito |
|
Leggibilità |
Può diventare lunga con molte condizioni |
Più concisa quando si confronta la stessa espressione |
|
Flessibilità |
Altamente flessibile poiché può gestire espressioni diverse |
Flessibilità limitata poiché dà solo corrispondenze esatte con un’espressione |
Cose da considerare
Ci sono alcune cose da tenere a mente quando lavori con la funzione IFS() in Excel.
Errori comuni e come risolverli
Per prima cosa, vediamo alcuni errori comuni in cui potresti imbatterti.
Argomenti troppo pochi
Se aggiungiamo una condizione ma dimentichiamo di includere cosa dovrebbe accadere se è vera (value_if_true), Excel mostra un pop-up: "Hai immesso troppo pochi argomenti per questa funzione."
Errore #N/A
L’errore #N/A si verifica quando nessuna delle condizioni nella formula è TRUE. Excel ha bisogno che almeno una corrisponda, altrimenti si blocca. Se non vuoi visualizzare #N/A, aggiungi TRUE alla fine con un valore di fallback.
Errore #VALUE!
L’errore #VALUE! compare quando un argomento logical_test non restituisce chiaramente TRUE o FALSE. Magari è un refuso, o forse la condizione non è del tutto corretta. In ogni caso, Excel non saprà cosa farne, quindi ricontrolla la tua logica.
Suggerimenti e buone pratiche
Ecco ora alcune buone pratiche per rendere le tue formule migliori e più semplici:
-
Cerca di mantenere le cose semplici. Dieci condizioni o meno di solito bastano.
-
Aggiungi una condizione di fallback usando
TRUEcome ultima condizione. Copre i casi che non rientrano nelle tue condizioni principali. -
Assicurati che ogni condizione abbia un risultato e che i test restituiscano
TRUEoFALSE. -
Metti alla prova la tua formula con casi limite come 0, 100 o anche celle vuote per assicurarti che gestisca tutto come previsto.
Pro e contro
IFS() ha dei veri vantaggi, ma ci sono anche alcune cose a cui fare attenzione.
|
Pro |
Contro |
|
Più pulita e facile da leggere rispetto a |
Non usa lo short-circuiting — controlla ogni condizione, anche dopo una corrispondenza |
|
Supporta fino a 127 condizioni |
Devi aggiungere manualmente un fallback con |
|
Più facile da eseguire il debug e seguire logiche complesse |
Funziona solo in Excel 2016 o versioni successive |
Considerazioni finali
La funzione IFS() è un modo pratico per verificare molte condizioni senza far diventare disordinata la formula. È più leggibile rispetto a più istruzioni IF() impilate e rende la tua logica molto più chiara. Assicurati di elencare le condizioni nell’ordine giusto e aggiungi sempre un fallback finale usando TRUE — così la formula non si romperà se non c’è alcuna corrispondenza.
Se la tua logica è prevedibile e segue regole chiare, IFS() è un ottimo modo per mantenere il foglio ordinato e facile da gestire.
Sono una content strategist: mi piace semplificare argomenti complessi. Ho aiutato aziende come Splunk, Hackernoon e Tiiny Host a creare contenuti coinvolgenti e informativi per il loro pubblico.
Domande frequenti su Excel IFS()
Posso combinare IFS() con altre funzioni come AND() o OR()?
Sì, puoi usare le funzioni AND() e OR() all’interno di una formula IFS() per rendere le tue condizioni più specifiche o flessibili.
Per esempio, un numero nella cella A1 può essere categorizzato come Low, Medium o High in base all’intervallo di valori.
=IFS(AND(A1 > 0, A1 <= 10), "Low", AND(A1 > 10, A1 <= 20), "Medium", TRUE, "High")
La funzione IFS() supporta i confronti tra date?
Sì, puoi confrontare valori di data usando operatori logici proprio come per i numeri:
=IFS(A1<TODAY(), "Past", A1=TODAY(), "Today", A1>TODAY(), "Future")

