Menu

Menu a tendina in Excel: come crearlo con Convalida dati

Seleziona le celle, vai su Dati > Convalida dati, scegli Elenco e scrivi le voci (North;South;East) o seleziona un intervallo come origine. Poi rendi l'elenco dinamico con UNICI, dipendente da un altro elenco, e cerca la voce scelta.

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

Per creare un menu a tendina in Excel, seleziona le celle, vai su Dati > Convalida dati, imposta Consenti su Elenco, scrivi le voci in Origine separate da punti e virgola (North;South;East;West) oppure seleziona l'intervallo che le contiene, e premi OK. Ogni cella mostra ora una freccia con quelle scelte, e le altre voci vengono rifiutate.

Scegliere una regione
E2
ABCDEF
1RepRegionSalesRegionSales
2AnaNorth120North360
3BenSouth85
4CaraNorth240
5DanEast60
6EveSouth150
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.

F2 mostra 360, il totale di North. Scegli North in B3 e F2 cresce degli 85 di Ben. Anche E2 ha un menu a tendina: scegli South lì e F2 mostra invece il totale di South. Un elenco per l'input e una formula che lo legge è l'uso più comune di un menu a tendina. La formula in F2 è =SUMIF(B2:B6,E2,C2:C6); in Excel italiano =SOMMA.SE(B2:B6;E2;C2:C6), e la tabella accetta anche questa forma.

Come creare un menu a tendina, passo per passo

  1. Seleziona le celle che devono ricevere l'elenco, per esempio B2:B6.
  2. Vai su Dati > Convalida dati (gruppo Strumenti dati). In Excel inglese per Windows la sequenza di tasti è Alt, A, V, V.
  3. Nella scheda Impostazioni, imposta Consenti su Elenco.
  4. In Origine, scrivi le voci separate dal separatore di elenco, North;South;East;West, oppure fai clic nella casella e seleziona sul foglio l'intervallo con le voci, che scrive =$F$2:$F$5.
  5. Lascia spuntato Elenco nella cella (senza, non c'è la freccia, solo il controllo).
  6. Premi OK.

Per aprire l'elenco da tastiera, seleziona la cella e premi Alt+Freccia giù (Windows) oppure Opzione+Freccia giù (Mac). In Excel per Microsoft 365, scrivere le prime lettere nella cella restringe l'elenco alle voci corrispondenti.

Due schede facoltative nella stessa finestra: Messaggio di input mostra un suggerimento quando la cella è selezionata, e Messaggio di errore stabilisce cosa succede quando qualcuno scrive un valore che non è nell'elenco. Con lo stile Interruzione (il predefinito) la voce viene rifiutata; con Avviso o Informazioni viene accettata dopo una richiesta. Togli la spunta da Mostra messaggio di errore dopo l'immissione di dati non validi per lasciar scrivere qualsiasi cosa offrendo comunque l'elenco.

Le voci scritte a mano sono separate dal separatore di elenco delle impostazioni internazionali del computer. Con le impostazioni italiane è il punto e virgola, North;South;East;West, mentre un Excel con impostazioni inglesi, come la tabella di questa pagina, usa la virgola: North,South,East,West.

Un elenco scritto nella finestra resta nascosto e va modificato lì. Un elenco nelle celle è più facile da mantenere: cambi una cella e ogni menu a tendina che la usa cambia. Qui le regioni sono in E2:E5 e il menu a tendina su B2:B6 usa quell'intervallo come origine.

Voci dell'elenco dalle celle
B2
ABCDE
1RepRegionSalesRegions
2AnaNorth120North
3BenSouth85South
4CaraNorth240East
5DanEast60West
6EveSouth150
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.

Cambia E5 da West a Central, poi apri una freccia qualsiasi della colonna B: l'elenco offre Central al posto di West. I valori già scelti nella colonna B non cambiano.

Per usare un intervallo di un altro foglio, il modo abituale per tenere gli elenchi fuori dalla vista, scrivi il nome del foglio in Origine: =Lists!$A$2:$A$5. Per far crescere l'elenco quando aggiungi una voce in fondo, trasforma prima le voci in una tabella (selezionale, Inserisci > Tabella) e poi seleziona la colonna della tabella come origine: il riferimento si allarga con la tabella.

Un menu a tendina dinamico con UNICI

Quando le voci devono venire dai dati stessi (ogni regione che compare in una colonna, una volta ciascuna), costruisci l'elenco con una formula e punta il menu a tendina al risultato. =DATI.ORDINA(UNICI(B2:B8)) in G2 espande le regioni distinte in ordine alfabetico.

Regioni prese dai dati
E2
ABCDEFG
1RepRegionSalesPickSalesRegions
2AnaNorth120South235East
3BenSouth85North
4CaraNorth240South
5DanEast60West
6EveSouth150
7FayWest95
8GusEast110
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.

G2 espande East, North, South, West, e il menu a tendina in E2 offre queste quattro. Cambia B7 in Central e Central compare sia nell'espansione sia nell'elenco.

In Excel, imposta l'Origine del menu a tendina su =$G$2#. Il # dopo una cella significa "l'intera espansione di questa formula", quindi l'elenco è sempre lungo esattamente quanto il risultato, senza righe vuote in fondo. Il riferimento all'espansione richiede Excel 365 o 2021; la cella di origine può stare in un altro foglio (=Lists!$A$2#). Se la colonna dei dati ha celle vuote, UNICI restituisce uno 0 per esse; lasciale fuori con =DATI.ORDINA(UNICI(FILTRO(B2:B100;B2:B100<>""))). La pagina su UNICI spiega la funzione nel dettaglio.

Un elenco dipendente cambia in base alla scelta in un'altra cella: scegli Fruit in A2, e B2 offre solo frutta. In Excel 365 e 2021, una formula FILTRO costruisce il secondo elenco: =FILTRO(E2:E8;D2:D8=A2) restituisce le voci la cui categoria corrisponde ad A2, e il menu a tendina in B2 usa quell'espansione come origine.

Categoria, poi voce
A2
ABCDEFG
1CategoryItemCategoryItemItems
2FruitPearFruitAppleApple
3FruitPearPear
4VegetableCarrotKiwi
5VegetableLeek
6BakeryBread
7FruitKiwi
8BakeryBagel
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.

Con Fruit in A2, G2 espande Apple, Pear e Kiwi, e quelle sono le scelte in B2. Scegli Bakery in A2: G2 diventa Bread e Bagel. B2 dice ancora Pear finché non scegli di nuovo, perché un menu a tendina non cambia mai un valore già presente nella cella. In Excel l'origine di B2 è =$G$2#.

Nelle versioni più vecchie di Excel, il metodo classico usa INDIRETTO e gli intervalli denominati:

  1. Metti le voci di ogni categoria in una colonna a sé, con il nome della categoria come intestazione: Fruit in una colonna, Vegetable in quella dopo.
  2. Seleziona ogni colonna di voci e dalle il nome della sua categoria nella Casella Nome (a sinistra della barra della formula): Fruit, Vegetable, Bakery.
  3. Dai ad A2 un menu a tendina con l'origine Fruit;Vegetable;Bakery.
  4. Dai a B2 un menu a tendina con l'origine =INDIRETTO(A2). INDIRETTO trasforma il testo di A2 in un riferimento all'intervallo con quel nome.

I nomi devono corrispondere esattamente al testo della categoria e non possono contenere spazi (usa Dairy_Products, oppure =INDIRETTO(SOSTITUISCI(A2;" ";"_")) nell'origine). Altro su INDIRETTO nella pagina su INDIRETTO.

Cercare il valore della voce scelta

Un menu a tendina è spesso l'input di un modulo d'ordine o di un preventivo: l'utente sceglie un prodotto e una ricerca ne inserisce il prezzo.

Prezzo del prodotto scelto
B2
ABCDEF
1ProductPriceProductPrice
2OrderPearApple$1.20
3Pear$1.50
4Carrot$0.80
5Bread$2.40
6Milk$1.10
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.

Tocca a te: Restituisci in C2 il prezzo del prodotto scelto in B2, preso dalla tabella in E:F.

Con Pear scelto, la risposta è $1.50. Scegli un altro prodotto in B2 e il prezzo lo segue. Funziona anche =CERCA.X(B2;E2:E6;F2:F6); vedi CERCA.VERT per gli argomenti.

Colorare una cella in base alla voce scelta

Per colorare la cella in base a ciò che è stato scelto (verde per Done, rosso per Late), aggiungi una regola di formattazione condizionale alle stesse celle: seleziona B2:B6, vai su Home > Formattazione condizionale > Regole evidenziazione celle > Uguale a, scrivi Late e scegli un formato. Per colorare l'intera riga, seleziona A2:B6 e usa Nuova regola > Utilizza una formula per determinare le celle da formattare con =$B2="Late".

Evidenziare le attività in ritardo
B3
AB
1TaskStatus
2QuoteDone
3InvoiceLate
4OrderOpen
5ReportLate
6SurveyDone
Fai clic su una cella per vederne la formula. Cambia un numero o una formula e il foglio ricalcola.

B3 e B5 sono evidenziate. Scegli Late in B4 e viene evidenziata anche lei; scegli Done in B3 e l'evidenziazione sparisce. La pagina sulla formattazione condizionale spiega le regole nel dettaglio.

Perché un menu a tendina non funziona

  • Elenco nella cella non è spuntato in Dati > Convalida dati. L'elenco limita comunque le voci, ma non c'è la freccia.
  • La freccia compare solo sulla cella selezionata. Nulla nella griglia segnala le altre celle che hanno un elenco; per trovarle, usa Home > Trova e seleziona > Convalida dati.
  • L'intervallo di Origine ha celle vuote, quindi l'elenco mostra righe vuote. Seleziona solo le celle piene, oppure usa un'origine espansa (=$G$2#), che non ha celle vuote.
  • Voci scritte con il separatore sbagliato: North,South in un Excel che usa il punto e virgola diventa una sola voce chiamata North,South.
  • Un menu a tendina contiene un solo valore. Scegliere una seconda voce sostituisce la prima; selezionare più voci in una cella richiede una macro VBA.

Per copiare un menu a tendina in altre celle senza copiarne il valore, copia la cella, poi usa Home > Incolla > Incolla speciale > Convalida. Per eliminarne uno, seleziona le celle e scegli Dati > Convalida dati > Cancella tutto.

Domande frequenti

Come creo un menu a tendina in Excel?

Seleziona le celle, vai su Dati > Convalida dati, imposta Consenti su Elenco, scrivi le voci in Origine separate da punti e virgola (North;South;East) oppure seleziona l'intervallo che le contiene (=$F$2:$F$5), e premi OK.

Come modifico un menu a tendina in Excel?

Seleziona una cella con l'elenco, apri Dati > Convalida dati e cambia la casella Origine. Spunta Applica le modifiche a tutte le altre celle con le stesse impostazioni per aggiornare ogni copia. Se l'origine è un intervallo, modificare le celle di quell'intervallo cambia l'elenco senza aprire la finestra.

Come elimino un menu a tendina in Excel?

Seleziona le celle, vai su Dati > Convalida dati e fai clic su Cancella tutto, poi OK. I valori già scelti restano nelle celle; spariscono solo la freccia e la restrizione.

Come creo un menu a tendina da un altro foglio?

Scrivi in Origine il riferimento con il nome del foglio: =Lists!$A$2:$A$6, oppure fai clic sull'altro foglio e seleziona l'intervallo mentre la casella Origine è attiva. Funziona anche un intervallo denominato (Formule > Definisci nome): =Regions.

Come creo un menu a tendina che si aggiorna da solo?

Puntalo a una formula espansa: metti =DATI.ORDINA(UNICI(FILTRO(B2:B100;B2:B100<>""))) in una cella di appoggio come H2 e usa =$H$2# come Origine. I nuovi valori della colonna B compaiono subito nell'elenco, e FILTRO tiene fuori le righe vuote. Richiede Excel 365 o 2021.

Illustrazione dei linguaggi di programmazione di Coddy

Impara a programmare con Coddy

INIZIA