Creare un elenco a discesa ricercabile in Excel (2 metodi)

  • Condividi Questo
Hugh West

Questo articolo illustra come creare un elenco a discesa ricercabile in Excel e mostra i due modi in cui è possibile farlo utilizzando formule e VBA. L'immagine seguente evidenzia lo scopo di questo articolo. Date una rapida occhiata all'articolo per vedere come si fa.

Scarica il quaderno di esercizi

È possibile scaricare la cartella di lavoro pratica dal pulsante di download qui sotto.

Elenco a discesa ricercabile.xlsm

2 modi per creare un elenco a discesa ricercabile in Excel

Immaginiamo di avere il seguente set di dati nel foglio di lavoro con nomi come Stati Il dataset contiene informazioni sui primi 13 Stati degli USA.

Ora si vuole creare un elenco a discesa ricercabile nella cella B4 nel foglio di lavoro denominato A discesa .

È quindi necessario seguire i passaggi evidenziati nei metodi seguenti.

1. Creare un elenco a discesa ricercabile con formule in Excel

Per prima cosa, creeremo un elenco a discesa ricercabile utilizzando le formule di Excel. Seguite i passaggi seguenti per poterlo fare.

📌 Passi

  • Per prima cosa, inserire la seguente formula nella cella E5 nel foglio denominato Stati .
=FILTRO(B5:B17,ISNUMERO(SEARCH(Dropdown!B4,B5:B17)), "Non trovato")

  • Il Funzione di ricerca nella formula cerca un determinato valore.
  • Il Funzione ISNUMBER ritorni Vero se l'uscita del programma Funzione di ricerca è un numero, altrimenti restituisce Falso .
  • Il Funzione FILTRO filtra i dati in base ai criteri indicati.

  • Quindi selezionare la cella B4 nel A discesa foglio di lavoro. Selezionare quindi Dati> Convalida dei dati .

  • Quindi selezionare la voce Impostazioni nella scheda Convalida dei dati Scegliere quindi Elenco nel Consentite: utilizzando la freccia a discesa.
  • Inserite quindi la seguente formula nel campo Fonte campo.
=Stati!$E$5#

  • Dopodiché, andare alla sezione Avviso di errore scheda.

  • Ora deselezionate Mostra un avviso di errore dopo l'inserimento di dati non validi Poi premere il tasto OK pulsante.

  • Finalmente è stato creato un elenco a discesa ricercabile. Ora digitate qualcosa (di nuovo) nella cella B4 Selezionare quindi la freccia a discesa visibile nell'angolo in basso a destra della cella, per visualizzare tutti i risultati della ricerca, come mostrato nell'immagine seguente.

Per saperne di più: Come creare un elenco a discesa basato su una formula in Excel (4 modi)

Letture simili:

  • Come copiare l'elenco a discesa dei filtri in Excel (5 modi)
  • Creare un elenco a discesa in Excel da una tabella (5 esempi)
  • Come creare un elenco da un intervallo in Excel (3 metodi)
  • Aggiornamento automatico dell'elenco a discesa in Excel (3 modi)
  • Come creare una casella di riepilogo a selezione multipla in Excel

2. Creare un elenco a discesa ricercabile con Excel VBA

Ora, supponiamo di non voler selezionare alcuna freccia a discesa per visualizzare i risultati pertinenti, ma di voler vedere i risultati della ricerca come vengono mostrati in Google Search. Allora seguite i passaggi seguenti.

📌 Passi

  • Per prima cosa, è necessario seguire i passaggi precedenti Dati> Convalida dei dati solo nel metodo precedente.
  • Quindi selezionare la cella E5 nel Stati Dopo di che, selezionare Formule>> Gestione nomi .

  • Selezionare il prossimo Nuovo nel Nome Manager per definire un elenco.

  • Quindi modificare il Nome a Elenco a discesa nel Nuovo nome finestra.
  • Successivamente, inserite la seguente formula nel campo Si riferisce a Quindi premere il tasto OK La formula utilizza il tasto INDICE e COUNTIF funzioni.
=Stati!$E$5:$E$5:INDEX(Stati!$E$5:$E$17,COUNTIF(Stati!$E$5:$E$17,"?*"))

  • Andare ora alla sezione A discesa Selezionare quindi il foglio di lavoro Inserisci>> casella combinata dal Sviluppatore scheda.

  • Trascinare quindi il mouse per ridimensionare correttamente il ComboBox come mostrato di seguito.

  • Successivamente, verrà visualizzato un nuovo ComboBox creato come segue.

  • Ora fate clic con il tasto destro del mouse sulla voce ComboBox e selezionare Proprietà .

  • Successivamente, selezionare la voce Alfabetico nella scheda Proprietà quindi apportare le seguenti modifiche: AutoWordSelect>> Falso , Cellula collegata>> B4 , PartitaEntry>> 2 - fnMatchEntryNone .

  • Ora copiate il seguente codice.
 Private Sub ComboBox1_Change() ComboBox1.ListFillRange = "Dropdown_List" Me.ComboBox1.DropDown End Sub 
  • Dopodiché, fare doppio clic sulla voce ComboBox In questo modo si accede direttamente a un nuovo modulo del programma Microsoft VBA Quindi incollare il codice copiato nel modulo vuoto, come mostrato di seguito. Quindi premere F5 per eseguire il codice.

  • Infine, il menu a tendina ricercabile funzionerà come Google Search.

Per saperne di più: Valori unici in un elenco a discesa con VBA in Excel (Guida completa)

Cose da ricordare

  • È necessario deselezionare il campo Modalità di progettazione nel Sviluppatore per poter digitare il nome ComboBox .
  • Non dimenticate di assicurarvi che il riferimenti assoluti sono inseriti correttamente nelle formule.
  • Utilizzo CTRL+SHIFT+Invio nel caso in cui il formule di array non funzionano.

Conclusione

Ora sapete come creare un elenco a discesa ricercabile in Excel. Utilizzate la sezione dei commenti qui sotto per ulteriori domande o suggerimenti e fateci sapere se siete riusciti a farlo anche voi. Potete anche visitare il nostro sito ExcelWIKI Rimanete con noi e continuate a imparare.

Hugh West è un istruttore e analista di Excel di grande esperienza con oltre 10 anni di esperienza nel settore. Ha conseguito una laurea in Contabilità e Finanza e un Master in Economia Aziendale. Hugh ha una passione per l'insegnamento e ha sviluppato un approccio didattico unico che è facile da seguire e capire. La sua conoscenza approfondita di Excel ha aiutato migliaia di studenti e professionisti in tutto il mondo a migliorare le proprie competenze ed eccellere nella propria carriera. Attraverso il suo blog, Hugh condivide le sue conoscenze con il mondo, offrendo esercitazioni gratuite su Excel e formazione online per aiutare le persone e le aziende a raggiungere il loro pieno potenziale.