Skip to main content

Kutools per Office — Una Suite. Cinque Strumenti. Ottieni di Più.

Come mostrare il primo elemento nell'elenco a discesa invece di lasciarlo vuoto?

Author Xiaoyang Last modified

Gli elenchi a discesa nei fogli di lavoro di Excel sono una funzionalità pratica per semplificare e standardizzare l'immissione dei dati: gli utenti possono semplicemente selezionare tra opzioni predefinite anziché digitare i valori individualmente. Tuttavia, a volte potresti incontrare una situazione in cui, cliccando su una cella con un elenco a discesa, la selezione iniziale appare vuota invece del primo elemento dati effettivo. Questo problema spesso si verifica se l'elenco dei dati di origine è stato modificato e rimangono righe vuote alla fine, o se voci vicino alla fine sono state eliminate, portando la convalida dei dati a includere slot vuoti non intenzionali all'inizio dell'elenco. Soprattutto con liste lunghe, dover costantemente scorrere oltre le voci vuote fino al primo elemento valido può essere inefficiente e frustrante.

a screenshot showing blank as the top items in drop-down list

Risolvere questo problema non solo migliora la convenienza per gli utenti, ma aiuta anche a prevenire la selezione accidentale di valori vuoti, che potrebbero influire sulle successive attività di elaborazione o reportistica dei dati. In questo articolo, imparerai metodi pratici per assicurarti che la prima voce nel tuo elenco a discesa appaia sempre in cima, eliminando questi spazi vuoti non necessari.

Mostra il primo elemento nell'elenco a discesa invece di lasciarlo vuoto con la funzione Convalida Dati

Mostra automaticamente il primo elemento nell'elenco a discesa invece di lasciarlo vuoto con il codice VBA

Usa una tabella di Excel come Fonte Dati


Mostra il primo elemento nell'elenco a discesa invece di lasciarlo vuoto con la funzione Convalida Dati

Un modo efficace per evitare voci vuote all'inizio del tuo elenco a discesa è configurare la Convalida Dati utilizzando una formula che determina dinamicamente l'intervallo corretto. Questo approccio assicura che solo le celle popolate dall'elenco di origine siano incluse, indipendentemente da eventuali righe vuote causate dall'eliminazione di dati alla fine. Questa soluzione è particolarmente adatta per gli utenti che modificano frequentemente l'elenco di origine o che vogliono un aggiustamento basato su formule senza dover utilizzare macro.

1. Seleziona le celle in cui desideri creare l'elenco a discesa. Quindi, vai alla barra multifunzione di Excel e fai clic su Dati > Convalida Dati > Convalida Dati. Si aprirà la finestra di dialogo Convalida Dati, come mostrato di seguito:

a screenshot of inserting a Data Validation drop-down list

2. Nella scheda Impostazioni della finestra di dialogo Convalida Dati, imposta Consenti su Elenco. Nella casella Origine, inserisci questa formula per fare riferimento dinamicamente solo all'intervallo contenente dati effettivi:

=OFFSET(Foglio3!$A$1,0,0,COUNTA(Foglio3!$A:$A)-1,1)

Nota: In questa formula, Foglio3 si riferisce al foglio in cui risiedono i dati di origine, e A1 è la cella iniziale del tuo elenco. Adatta queste parti in base al layout specifico del tuo foglio di lavoro. L'uso di COUNTA assicura che solo le celle non vuote siano incluse, partendo da A1. Se l'elenco di origine contiene righe vuote deliberatamente (non solo alla fine), questo metodo potrebbe non escludere completamente quelle, quindi mantieni l'elenco di origine contiguo per ottenere i migliori risultati.

a screenshot of configuring the data validation settings with formula

3. Fai clic su OK per applicare le impostazioni. Ora, quando clicchi su una delle celle dell'elenco a discesa che hai configurato, l'elenco mostrerà il primo elemento dati effettivo in alto. Questo rimane vero anche se i dati di origine cambiano, purché l'intervallo copra tutti gli elementi nella colonna A e non ci siano celle vuote all'interno del blocco principale dei dati. Vedi il risultato qui sotto:

a screenshot displaying the final drop down list with the first item at the top of the list

Suggerimento: Se in seguito devi espandere o ridurre l'elenco di origine, non è necessario aggiornare le impostazioni di convalida dei dati. La formula si adatterà automaticamente, purché non ci siano celle vuote all'inizio dell'intervallo. Tuttavia, tieni presente che se è presente uno spazio vuoto all'interno dell'elenco (non solo alla fine), verrà saltato nel conteggio del calcolo ma potrebbe creare spazi vuoti non intenzionali nell'elenco a discesa.

Problema potenziale: Se la tua fonte dati potrebbe contenere spazi vuoti deliberati, o se hai celle unite o dati non contigui, considera di usare una Tabella di Excel come intervallo di origine, oppure consulta il metodo VBA qui sotto per una gestione più flessibile.


Mostra automaticamente il primo elemento nell'elenco a discesa invece di lasciarlo vuoto con il codice VBA

In alcuni scenari, regolare solo la fonte della convalida dei dati non è sufficiente — ad esempio, se i tuoi dati cambiano frequentemente, o se c'è il rischio che appaiano spazi vuoti per altre ragioni strutturali nell'intervallo di origine. Con un semplice codice VBA, puoi assicurarti che ogni volta che viene attivata una cella con convalida dei dati, l'elenco a discesa selezioni e mostri automaticamente il primo elemento disponibile. Questo può anche migliorare la velocità di immissione dei dati, poiché riduce i clic per l'utente.

1. Dopo aver inserito l'elenco a discesa, fai clic con il pulsante destro del mouse sulla scheda del foglio contenente l'elenco a discesa e scegli Visualizza Codice dal menu contestuale. Comparirà l'editor Microsoft Visual Basic for Applications. Nella finestra, incolla il seguente codice nel modulo del foglio di lavoro pertinente (non un modulo standard). Questo codice funzionerà in background e reimposterà l'elenco a discesa ogni volta che selezioni una cella di convalida:

Codice VBA: Mostra automaticamente il primo elemento dati nell'elenco a discesa:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice 20160725
    Dim xFormula As String
    On Error GoTo Out:
    xFormula = Target.Cells(1).Validation.Formula1
    If Left(xFormula, 1) = "=" Then
        Target.Cells(1) = Range(Mid(xFormula, 1)).Cells(1).Value
    End If
Out:
End Sub

a screenshot showing how to use the VBA code

2. Dopo aver incollato il codice, salva la cartella di lavoro (preferibilmente come file abilitato per le macro con estensione .xlsm) e chiudi la finestra dell'editor VBA. Ora, torna al tuo foglio e prova a cliccare su qualsiasi cella con l'elenco a discesa: quando attivi la cella, la prima voce nel tuo elenco a discesa verrà visualizzata automaticamente.

Suggerimenti e considerazioni: Questo approccio VBA è ideale quando desideri un'esperienza fluida per gli utenti, specialmente con liste di origine dinamiche o lunghe, o liste che potrebbero contenere inevitabili voci vuote. Ricorda di abilitare le macro affinché funzioni e informa altri utenti della cartella di lavoro, poiché alcune configurazioni limitano l'uso delle macro per motivi di sicurezza.

Risoluzione dei problemi: Se il codice sembra non funzionare, verifica che sia posizionato nella finestra del codice del foglio di lavoro corretto nell'editor VBA. Assicurati anche che l'elenco a discesa utilizzi un elenco di convalida dati standard.

Limitazione: La soluzione VBA si attiverà solo se l'utente seleziona la cella dell'elenco a discesa; non funziona se la cella viene popolata da altri mezzi (come risultati di formule o tramite copia/incolla). Se rimuovi l'elenco a discesa dalla cella o sposti la cella in un altro foglio senza il codice VBA, perderai il comportamento di selezione automatica.


Usa una tabella di Excel come Fonte Dati

Se l'elenco di origine del tuo elenco a discesa è dinamico e vuoi una migliore manutenibilità, considera di convertire l'elenco di origine in una Tabella di Excel. Le tabelle regolano automaticamente le loro dimensioni man mano che i dati vengono aggiunti o rimossi, quindi l'elenco rimane aggiornato. Tuttavia, nota che una Tabella di Excel non esclude automaticamente le celle vuote — qualsiasi voce vuota nella tabella apparirà ancora nell'elenco a discesa a meno che non venga filtrata esplicitamente (ad esempio, utilizzando la funzione FILTRO disponibile in Excel 365 e Excel 2021).

1. Seleziona i tuoi dati di origine e premi Ctrl + T per convertirli in una Tabella. Assicurati che non ci siano spazi vuoti in cima. Assegna un nome significativo alla Tabella, come MyList (utilizzando la scheda Progettazione Tabella).

2. Quando configuri la convalida dei dati, usa il riferimento strutturato alla colonna della tua tabella. Nell'Origine della Convalida Dati, digita:

=INDIRECT("MyList[Column1]")

Sostituisci Colonna1 con il nome effettivo della tua colonna (l'intestazione della colonna). Questo metodo include dinamicamente tutti gli elementi nella colonna della tabella che sono riempiti, mantenendo l'integrità dell'elenco mentre aggiorni i dati.

Questo approccio è particolarmente adatto per ambienti in cui i dati di origine vengono aggiornati regolarmente e più utenti devono gestire efficientemente l'elenco validato.


I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l’analisi dei dati grazie a: Esecuzione intelligente | Genera codice | Crea formule personalizzate | Analizza dati e crea grafici | Attiva Funzioni avanzate
Funzionalità più usate: Trova, evidenziazione o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda senza formula...
Super RICERCA.VERT: Ricerca VERT per criteri multipli | Ricerca VERT per valori multipli | Ricerca su più fogli | Corrispondenza approssimativa...
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa multi-selezione...
Gestore colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia stato di visibilità delle colonne nascoste | Confronta intervalli & colonne...
Funzionalità in primo piano: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestore di cartelle di lavoro & fogli | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email per elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
Top15 strumenti:12 strumenti Testo (Aggiungi testo, Elimina Caratteri Specifici, ...) |50+ tipi di grafico (Diagramma di Gantt, ...) |40+ formule pratiche (Calcola letà in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci Immagine da percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti Unione & Dividi (Unione avanzata righe, Dividi celle, ...) | ... e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e farti risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta le schede su Office e rende il tuo lavoro molto più semplice

  • Abilita la modifica e lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra invece che in nuove finestre.
  • Aumenta la produttività del50% e riduce centinaia di clic del mouse ogni giorno!

Tutti gli add-in Kutools. Un solo programma di installazione

La suite Kutools for Office include add-in per Excel, Word, Outlook & PowerPoint più Office Tab Pro, ideale per i team che lavorano su più app di Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tutto-in-uno — Add-in per Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un solo programma di installazione, una sola licenza — configurazione in pochi minuti (pronto per MSI)
  • Funzionano meglio insieme — produttività ottimizzata su tutte le app Office
  • Prova completa30 giorni — nessuna registrazione, nessuna carta di credito
  • Massimo risparmio — costa meno rispetto all’acquisto singolo degli add-in