Menu

Funzione SWITCH in Excel: sintassi, predefinito ed esempi

=SWITCH(B2;"N";"North";"S";"South";"Unknown") confronta B2 con ogni valore a turno e restituisce il risultato abbinato alla prima corrispondenza esatta, oppure Unknown quando nulla corrisponde. Impara la sintassi di SWITCH, il valore predefinito, lo schema SWITCH(VERO;...) e quando usare PIÙ.SE o i SE annidati.

Ogni foglio di questa pagina è interattivo: cambia un numero o una formula e si ricalcola.

=SWITCH(B2;"N";"North";"S";"South";"E";"East";"Unknown") confronta B2 con "N", "S" ed "E" a turno e restituisce il nome abbinato alla prima corrispondenza esatta. Quando B2 non corrisponde a nessuno di essi, restituisce l'ultimo argomento, Unknown. SWITCH ha lo stesso nome in Excel italiano e inglese; la tabella mostra le formule con la virgola, ma puoi scriverle anche all'italiana, con il punto e virgola.

Da codice regione a nome
C2
ABC
1StoreCodeRegion
2101NNorth
3102SSouth
4103WUnknown
5104EEast
6105nNorth
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.In Excel in italiano: =SWITCH(B2;"N";"North";"S";"South";"E";"East";"Unknown")

Fai clic su C2 per vedere la formula. Il negozio 103 ha il codice W, che non è nell'elenco, quindi riceve Unknown. Il negozio 105 ha una n minuscola e riceve comunque North: in SWITCH il confronto di testo ignora maiuscole e minuscole. Cambia B4 in S e la regione si aggiorna.

Sintassi di SWITCH

=SWITCH(expression, value1, result1, [value2, result2], ..., [default])
  • expression (espressione) viene calcolata una volta sola: una cella, o una formula come GIORNO.SETTIMANA(A2) o MESE(A2).
  • Poi vengono coppie formate da un valore e dal risultato da restituire quando expression è uguale a quel valore. Le coppie possono essere fino a 126.
  • default (predefinito) è facoltativo: un argomento in più dopo l'ultima coppia. SWITCH sa che è il valore predefinito perché non ha un compagno.
  • La corrispondenza è esatta. Da sola, SWITCH non può verificare "maggiore di" (vedi SWITCH(VERO) più sotto).

SWITCH richiede Excel 2019 o versioni successive, oppure Microsoft 365. In un Excel 2016 a licenza perpetua o precedente una formula con SWITCH mostra #NOME? (in inglese #NAME?). Anche Fogli Google ha SWITCH.

Il valore predefinito, e #N/D senza di esso

Senza un valore predefinito, un valore che non corrisponde a nulla dà #N/D (in inglese #N/A, come lo mostra la tabella). Qui il numero del giorno della settimana dato da GIORNO.SETTIMANA (in inglese WEEKDAY; 1 è domenica, 7 è sabato) viene trasformato in un'etichetta; la colonna C non ha un valore predefinito, la colonna D ha "Weekday" come predefinito:

Fine settimana o giorno feriale
D2
ABCD
1DateDay numberNo defaultWith default
22026-03-147SaturdaySaturday
32026-03-151SundaySunday
42026-03-162#N/AWeekday
52026-03-173#N/AWeekday
62026-03-217SaturdaySaturday
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.In Excel in italiano: =SWITCH(GIORNO.SETTIMANA(A2);1;"Sunday";7;"Saturday";"Weekday")

Il 14 e il 21 marzo 2026 sono sabati e il 15 marzo è una domenica, quindi entrambe le colonne li nominano. Il lunedì e il martedì non corrispondono né a 1 né a 7: la colonna C mostra #N/D, la colonna D mostra Weekday. La colonna D mostra anche che l'espressione può essere una formula: GIORNO.SETTIMANA viene calcolata una volta e SWITCH confronta il suo risultato con ogni valore. In Excel italiano la formula di D2 è =SWITCH(GIORNO.SETTIMANA(A2);1;"Sunday";7;"Saturday";"Weekday").

SWITCH(VERO; ...) per le fasce

SWITCH verifica solo l'uguaglianza, ma l'espressione può essere VERO. Ogni valore è allora un confronto, e SWITCH restituisce il risultato del primo confronto uguale a VERO. Così funziona come PIÙ.SE, con un valore predefinito alla fine:

Voti con SWITCH(VERO)
C2
ABC
1StudentScoreGrade
2Ana94A
3Ben81B
4Chloe70C
5Dan65F
6Eve88B
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.In Excel in italiano: =SWITCH(VERO;B2>=90;"A";B2>=80;"B";B2>=70;"C";"F")

I confronti vengono letti in ordine, quindi la soglia più alta va per prima, la stessa regola dei SE annidati e di PIÙ.SE. La "F" finale non ha un compagno, quindi è il valore predefinito per ogni punteggio sotto 70. PIÙ.SE scrive la stessa regola in modo altrettanto chiaro; l'unica differenza è dove va VERO: una volta all'inizio in SWITCH, come ultimo test in PIÙ.SE.

Trasformare numeri in nomi

Un uso frequente è trasformare un numero di codice in una parola, come una posizione d'arrivo in una medaglia:

Da posizione a medaglia
C2
ABC
1RunnerRankMedal
2Ana2Silver
3Ben1Gold
4Chloe4
5Dan3Bronze
6Eve7
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.In Excel in italiano: =SWITCH(B2;1;"Gold";2;"Silver";3;"Bronze";"")

Chloe ed Eve sono arrivate fuori dai primi tre posti, quindi ricevono il valore predefinito, un testo vuoto. Quando i codici sono 1, 2, 3 e così via senza buchi, SCEGLI (in inglese CHOOSE) è più corta, =SCEGLI(B2;"Gold";"Silver";"Bronze"), ma non ha un valore predefinito e restituisce #VALORE! (in inglese #VALUE!) per 4 e oltre.

Esercizio: codici di stato

Stato delle fatture
C2
ABC
1InvoiceCodeStatus
2INV-01P
3INV-02U
4INV-03X
5INV-04P
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.

Tocca a te: In C2, trasforma il codice in B2 in una parola con SWITCH: P è "Paid", U è "Unpaid", e qualsiasi altra cosa è "Check". La formula viene copiata fino a C5.

SWITCH, PIÙ.SE e SE annidati a confronto

Tutte e tre restituiscono uno tra più risultati; si differenziano per cosa verificano.

SWITCHPIÙ.SESE annidati
VerificaUna sola espressione, per uguaglianzaQualsiasi condizione per ogni coppiaQualsiasi condizione per ogni livello
Valore predefinitoUltimo argomento, facoltativoUna coppia finale con VEROIl valore se falso dell'ultimo SE
Nessuna corrispondenza, nessun predefinito#N/D#N/DFALSO, se l'ultimo SE non ha se_falso
Ripete la cellaNo: B2 scritta una voltaSì: B2="N", B2="S"...Sì
Excel 2016 e precedenti#NOME?#NOME?Funziona

Usa SWITCH quando una cella o una formula viene confrontata con un elenco di valori fissi (codici, numeri dei giorni della settimana, mesi); è la più corta e calcola l'espressione una volta sola. Usa PIÙ.SE quando ogni test è un confronto diverso o legge celle diverse. Usa i SE annidati quando il file deve aprirsi in Excel 2016 o versioni precedenti. Quando l'elenco dei codici è lungo o cambia spesso, mettilo invece in una tabella a due colonne e cercalo con CERCA.X, così aggiungere un codice significa aggiungere una riga, non modificare ogni formula.

Domande frequenti

Cosa fa la funzione SWITCH in Excel?

Confronta un'espressione con un elenco di valori e restituisce il risultato abbinato al primo valore che corrisponde esattamente. =SWITCH(B2;1;"Gold";2;"Silver";3;"Bronze";"") trasforma una posizione in classifica nel nome di una medaglia e restituisce un testo vuoto per qualsiasi altra posizione.

Perché SWITCH restituisce #N/D?

L'espressione non corrisponde a nessuno dei valori e non c'è un valore predefinito. Aggiungi un altro argomento dopo l'ultima coppia, come "Other", e SWITCH restituisce quello invece di #N/D.

SWITCH può verificare fasce come "maggiore di"?

Non direttamente, perché verifica solo l'uguaglianza. Usa VERO come espressione e dei confronti come valori: =SWITCH(VERO;B2>=90;"A";B2>=80;"B";"F") restituisce il risultato del primo confronto che è VERO.

Esiste la funzione SWITCH in Excel 2016?

Solo nella versione Microsoft 365 di Excel 2016. SWITCH è presente in Excel 2019, Excel 2021, Excel 2024 e Microsoft 365; un Excel 2016 a licenza perpetua o precedente mostra #NOME?, quindi lì usa i SE annidati o SCEGLI.

Illustrazione dei linguaggi di programmazione di Coddy

Impara a programmare con Coddy

INIZIA