Note: The other languages of the website are Google-translated. Back to English

Come creare un elenco a discesa ricercabile in Excel?

Per un elenco a discesa con molti valori, trovare un valore adatto dall'elenco non è un lavoro facile. In precedenza abbiamo introdotto un metodo per completare automaticamente un elenco a discesa quando viene inserita la prima lettera. Oltre alla funzione di completamento automatico, puoi anche rendere ricercabile l'elenco a discesa per migliorare l'efficienza nel trovare il valore appropriato nell'elenco a discesa. Per rendere ricercabile l'elenco a discesa, è possibile seguire passo passo i metodi seguenti.

Crea un elenco a discesa ricercabile in Excel
Crea facilmente un elenco a discesa ricercabile con uno strumento straordinario

Altri tutorial per l'elenco a discesa ...


Crea un elenco a discesa ricercabile in Excel

Supponiamo che tu abbia un elenco di nomi di paesi nella colonna A come mostrato nello screenshot qui sotto, e ora vuoi usarli come dati di origine degli elenchi a discesa di ricerca, puoi fare come segue per farlo.

È necessario inserire una casella combinata anziché un elenco a discesa di convalida dei dati nel foglio di lavoro.

1. Se la Costruttori la scheda non viene visualizzata sulla barra multifunzione, è possibile abilitare il Costruttori scheda come segue.

1). In Excel 2010 o versioni successive, fare clic su Compila il > Opzioni. E nella Opzioni di Excel finestra di dialogo, fare clic Personalizzazione barra multifunzione nel riquadro di sinistra. Vai alla casella di riepilogo Personalizza la barra multifunzione, seleziona il Costruttori casella, quindi fare clic su OK pulsante. Vedi screenshot:

2). In Excel 2007, fare clic su Office pulsante> Opzioni di Excel. Nel Opzioni di Excel finestra di dialogo, fare clic Popolare nel riquadro di sinistra, controlla il file Mostra la scheda Sviluppatore nella barra multifunzione casella e infine fare clic su OK pulsante.

2. Dopo aver mostrato il file Costruttori scheda, fare clic Costruttori > inserire > Casella combinata

3. Disegna una casella combinata nel foglio di lavoro, fai clic con il pulsante destro del mouse e quindi seleziona Proprietà dal menu di scelta rapida.

4. Nel Proprietà finestra di dialogo, è necessario:

1). Selezionare Falso nel Selezione automatica delle parole campo;
2). Specificare una cella nel file LinkedCell campo. In questo caso, entriamo in A12;
3). Selezionare 2-fmMatchEntryNessuno nel MatchEntry campo;
4). genere Menu `A tendina nella ListFillRange campo;
5). Chiudi il Proprietà la finestra di dialogo. Vedi screenshot:

5. Ora disattiva la modalità di progettazione facendo clic Costruttori > Modalità di progettazione.

6. Seleziona una cella vuota come C2, inserisci la formula seguente e premi Entra. Trascinano la maniglia di riempimento automatico fino alla cella C9 per riempire automaticamente le celle con la stessa formula. Vedi screenshot:

=--ISNUMBER(IFERROR(SEARCH($A$12,A2,1),""))

Note:

1. $ A $ 12 è la cella che l'hai specificata come LinkedCell nel passaggio 4;
2. Dopo aver completato i passaggi precedenti, ora puoi testare: inserisci una lettera C nella casella combinata, quindi puoi vedere che le celle della formula che fanno riferimento alle celle contenenti il ​​carattere C sono riempite con il numero 1.

7. Seleziona la cella D2, inserisci la formula sottostante e premi Entra. Quindi trascina la maniglia di riempimento automatico fino alla cella D9.

=IF(C2=1,COUNTIF($C$2:C2,1),"")

8. Selezionare la cella E2, inserire la formula sottostante e premere Entra. Quindi trascina la maniglia di riempimento automatico verso il basso su E9 per applicare la stessa formula.

=IFERROR(INDEX($A$2:$A$9,MATCH(ROWS($D$2:D2),$D$2:$D$9,0)),"")

9. Ora è necessario creare un intervallo di nomi. Fare clic su Formula > Definisci nome.

10. Nel Nuovo nome finestra di dialogo, digitare Menu `A tendina nel  Nome casella, inserire la formula sottostante nella Si riferisce a casella, quindi fare clic su OK pulsante.

=$E$2:INDEX($E$2:$E$9,MAX($D$2:$D$9),1)

11. Ora, attiva la modalità di progettazione facendo clic Costruttori > Modalità di progettazione. Quindi fare doppio clic sulla casella Combo per aprire il file Microsoft Visual Basic, Applications Edition finestra.

12. Copia e incolla il codice VBA di seguito nell'editor di codice.

Codice VBA: rende ricercabile l'elenco a discesa

Private Sub ComboBox1_GotFocus()
	ComboBox1.ListFillRange = "DropDownList"
	Me.ComboBox1.DropDown
End Sub

13. premi il altro + Q i tasti per chiudere il file Microsoft Visual Basic, Applications Edition finestra.

D'ora in poi, quando un carattere viene inserito nella casella combinata, eseguirà una ricerca sfocata e quindi elencherà i valori rilevanti nell'elenco.

Note:: è necessario salvare questa cartella di lavoro come file di cartella di lavoro con abilitazione macro di Excel per conservare il codice VBA per un uso futuro.


Crea facilmente un elenco a discesa ricercabile con uno strumento straordinario

Sembra che il metodo di cui sopra non sia facile da gestire. Qui consigliamo una funzione utile - Elenco a discesa ricercabile of Kutools for Excel per aiutare a creare facilmente un elenco a discesa ricercabile in Excel.

Prima di applicare Kutools for Excel, Per favore scaricalo e installalo prima.

Eseguire le seguenti operazioni per creare un elenco a discesa ricercabile con la funzione Elenco a discesa ricercabile.

1. Clic Kutools > Menu `A tendina > Elenco a discesa ricercabile > Abilita elenco a discesa ricercabile.

2. In apertura Kutools for Excel finestra di dialogo (questa finestra di dialogo viene visualizzata solo la prima volta che si applica questa funzione), fare clic su pulsante.

3. Quindi in Elenco a discesa ricercabile finestra di dialogo, è necessario configurare come segue.

3.1) nel Applica a sezione, è possibile specificare l'ambito dell'intervallo per l'applicazione di questa funzionalità:
A: Intervalli specificati: Supporta uno o più intervalli di elenchi a discesa;
B: Ambito specificato: Supporta il foglio di lavoro corrente, la cartella di lavoro corrente o tutte le cartelle di lavoro.
3.2) nel Opzioni sezione, ci sono due opzioni, puoi sceglierne una, entrambe o nessuna a seconda delle tue esigenze:
A: Corrisponde solo all'inizio della parola: Se questa opzione è selezionata, vengono visualizzati solo gli elementi che iniziano con il carattere digitato, mentre il primo elemento visualizzato verrà completato automaticamente; Se questa opzione è deselezionata, verranno visualizzati gli elementi che contengono il carattere digitato;
B: Che tiene conto del maiuscolo o minuscolo: Se questa opzione è selezionata, vengono visualizzati solo gli elementi che corrispondono al caso del carattere digitato; Se questa opzione è deselezionata, gli elementi che contengono il carattere digitato verranno visualizzati senza distinzione tra maiuscole e minuscole.
3.3) nel Modalità sezione, scegli la modalità per aggiungere elementi dell'elenco a discesa alle celle.
A: Aggiungere: Se scegli questo pulsante di opzione, più elementi cercati (inclusi i duplicati) potranno essere aggiunti a una cella. Dopo aver aggiunto il primo elemento cercato a una cella, se esegui nuovamente una nuova ricerca in quella cella, il nuovo elemento cercato verrà aggiunto alla fine di quello esistente.
Nell' Separatore casella di testo, inserisci un separatore per separare gli elementi aggiunti;
Nell' Direzione del testo sezione, scegli una direzione per visualizzare gli elementi aggiunti nella cella dell'elenco a discesa.
B: modificare: Se scegli questo pulsante di opzione, l'elemento aggiunto in seguito sovrascriverà quello esistente. Nella cella è consentito visualizzare un solo elemento alla volta.
3.3) Fare clic OK.

4. Quindi fare clic Kutools > Menu `A tendina > Elenco a discesa ricercabile > Abilita elenco a discesa ricercabile per attivare questa funzionalità.

Ora è stato creato l'elenco a discesa ricercabile. Quando si fa clic su una cella di un elenco a discesa, verrà visualizzata una casella di riepilogo con tutti gli elementi a discesa elencati. Inserisci un carattere e gli elementi corrispondenti verranno cercati immediatamente e puoi fare clic sull'elemento necessario per inserirlo in quella cella.

Se si sceglie Orizzontalmente nel Direzione del testo sezione: tutti gli elementi aggiunti verranno visualizzati orizzontalmente in una cella. Guarda la demo qui sotto:

Se si sceglie Verticalmente nel Direzione del testo sezione: tutti gli elementi aggiunti verranno visualizzati verticalmente in una cella. Guarda la demo qui sotto:

Se hai scelto il modificare pulsante di opzione, è consentito visualizzare un solo elemento alla volta in una cella dell'elenco a discesa. Guarda la demo qui sotto:

Clicca per saperne di più su questa funzione.

  Se desideri avere una prova gratuita (30 giorni) di questa utility, fare clic per scaricarlo, quindi andare ad applicare l'operazione secondo i passaggi precedenti.


Articoli correlati:

Completamento automatico durante la digitazione nell'elenco a discesa di Excel
Se si dispone di un elenco a discesa di convalida dei dati con valori di grandi dimensioni, è necessario scorrere l'elenco solo per trovare quello corretto o digitare direttamente l'intera parola nella casella di riepilogo. Se esiste un metodo per consentire il completamento automatico quando si digita la prima lettera nell'elenco a discesa, tutto diventerà più semplice. Questo tutorial fornisce il metodo per risolvere il problema.

Crea un elenco a discesa da un'altra cartella di lavoro in Excel
È abbastanza facile creare un elenco a discesa di convalida dei dati tra i fogli di lavoro all'interno di una cartella di lavoro. Ma se i dati dell'elenco necessari per la convalida dei dati si trovano in un'altra cartella di lavoro, cosa faresti? In questo tutorial imparerai come creare un elenco a discesa da un'altra cartella di lavoro in Excel in dettaglio.

Crea un elenco a discesa ricercabile in Excel
Per un elenco a discesa con numerosi valori, trovarne uno corretto non è un lavoro facile. In precedenza abbiamo introdotto un metodo di completamento automatico dell'elenco a discesa quando si immette la prima lettera nella casella a discesa. Oltre alla funzione di completamento automatico, è anche possibile rendere ricercabile l'elenco a discesa per migliorare l'efficienza lavorativa nel trovare i valori corretti nell'elenco a discesa. Per rendere ricercabile l'elenco a discesa, prova il metodo in questo tutorial.

Compilare automaticamente altre celle quando si selezionano i valori nell'elenco a discesa di Excel
Supponiamo che tu abbia creato un elenco a discesa basato sui valori nell'intervallo di celle B8: B14. Quando si seleziona un valore nell'elenco a discesa, si desidera che i valori corrispondenti nell'intervallo di celle C8: C14 vengano inseriti automaticamente in una cella selezionata. Per risolvere il problema, i metodi in questo tutorial ti faranno un favore.

Più tutorial per l'elenco a discesa ...


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile distribuzione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce centinaia di clic del mouse ogni giorno!
fondo officetab
Commenti (67)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
molto ben spiegato. Lo amo. Grazie !!
Questo commento è stato fatto dal moderatore sul sito
Posto eccellente. Potresti spiegare come copiare lo stesso elenco a discesa su più celle. Voglio creare una nota spese e voglio poter selezionare una spesa diversa su ogni riga dallo stesso elenco a discesa. Grazie.
Questo commento è stato fatto dal moderatore sul sito
ho la stessa esigenza
Questo commento è stato fatto dal moderatore sul sito
Per qualche motivo, quando faccio clic su una selezione dall'elenco a discesa dopo aver digitato alcuni caratteri, il valore principale del menu a discesa diventa vuoto ... hai idea del perché ciò accadrebbe e come farlo smettere? Ho un pulsante di comando su cui voglio fare clic per inserire la selezione nella successiva cella disponibile in un determinato intervallo, ma ancora una volta il valore viene cancellato quando faccio clic su di esso.
Questo commento è stato fatto dal moderatore sul sito
Ho lo stesso identico problema. Ho fatto tutto bene, ma l'etichetta dell'elenco a discesa diventa vuota ogni volta che premo invio. Se hai risolto, condividi!
Questo commento è stato fatto dal moderatore sul sito
Il mio non funziona. La mia etichetta dell'elenco a discesa non funzionava nelle "proprietà" per la casella combinata. Ogni volta che l'ho inserito, è scomparso. Quindi ho usato invece "test". Ho regolato la macro con la parola test invece di dropdowmlist. Fatemi sapere se c'è qualcos'altro che posso fare? Ricerca non funzionante.
Questo commento è stato fatto dal moderatore sul sito
[quote]Il mio non funziona. La mia etichetta dell'elenco a discesa non funzionava nelle "proprietà" per la casella combinata. Ogni volta che l'ho inserito, è scomparso. Quindi ho usato invece "test". Ho regolato la macro con la parola test invece di dropdowmlist. Fatemi sapere se c'è qualcos'altro che posso fare? Ricerca non funzionante.Di imad[/quote] Ho visto questo "come creare un riempimento automatico / suggerire automaticamente DDL / casella combinata" su alcuni siti diversi e TUTTI vogliono che tu metta "qualcosa" nel campo ListFillRange PRIMA di creare un intervallo di nomi per facendo clic su Formula> Definisci nome e ListFillRange andrà sempre vuoto nella finestra Proprietà FINO a quando non definirai il nome (Formula> Definisci nome) ECCO perché penso che IMAD, sopra e MAARTEN sotto, stessero avendo il problema, non sicuro al 100%.
Questo commento è stato fatto dal moderatore sul sito
Così finalmente l'ho fatto funzionare! Ho collegato il linkedcell a un vlookup e ho ottenuto tutte le informazioni in fila. Mi chiedevo se potesse esserci qualche estensione su vba per filtrare effettivamente la tabella mentre digitiamo?
Questo commento è stato fatto dal moderatore sul sito
Ciao, non riesco a compilare "DropDownList" in "ListFillRange".... Qual è il problema? Non capisco la soluzione di imad. Grazie.
Questo commento è stato fatto dal moderatore sul sito
prova a mettere this=--ISNUMBER(IFERROR(SEARCH($A$12,$A$2,1),"")) invece =--ISNUMBER(IFERROR(SEARCH($A$12,A2,1),"") ) al punto 6
Questo commento è stato fatto dal moderatore sul sito
[quote]Ciao, non riesco a compilare "DropDownList" in "ListFillRange".... Qual è il problema? Non capisco la soluzione di imad. Grazie.Di Maarten[/quote] Ho pubblicato questa risposta sopra per IMAD e ho visto questo post qui per MAARTEN, quindi ho pensato di pubblicarlo anche per lui. Ho visto questo "come creare un riempimento automatico / suggerire automaticamente DDL / casella combinata" su alcuni siti diversi e TUTTI vogliono che tu metta "qualcosa" nel campo Proprietà ListFillRange PRIMA loro hanno te creare un intervallo denominato facendo clic su Formula > Definisci nome ....... e il ListFillRange sarà sempre vuoto nella finestra Proprietà FINO a quando non definisci il nome (Formula> Definisci nome) QUESTO è il motivo per cui penso che IMAD, sopra e MAARTEN sotto (qui) stessero riscontrando il problema, ma non sono sicuro al 100%.
Questo commento è stato fatto dal moderatore sul sito
Ciao, grazie mille per la tua soluzione. Ho già rinunciato, ma ci riproverò.
Questo commento è stato fatto dal moderatore sul sito
Grazie.. Molto utile.. Dio ti benedica
Questo commento è stato fatto dal moderatore sul sito
Anche io, come Cristina sopra, vorrei sapere come creare più caselle combinate per un foglio. Ho provato ma quando comincio a digitare nella seconda casella combinata accadono due cose: 1. non viene visualizzato alcun elenco a discesa e 2. il semplice atto di digitare nella casella combinata2 attiva la selezione dalla mia casella combinata originale1 e la evidenzia nel menu a discesa dalla casella combinata1. Ho controllato per assicurarmi che tutta la mia codifica indichi combobox2 per combobox2 ecc. Per le altre caselle, ma c'è una disconnessione che non riesco a capire.
Questo commento è stato fatto dal moderatore sul sito
Ho lo stesso identico problema, sei già riuscito a risolvere?
Questo commento è stato fatto dal moderatore sul sito
Ciao Herb, cosa succede se ho creato un elenco a discesa da un altro foglio di lavoro? la formula " =--ISNUMBER(IFERROR(SEARCH($A$2,H2,1),""))" ha un riferimento errato e quando lo modifico non consente di inserire la cella giusta. cosa suggerisci? grazie
Questo commento è stato fatto dal moderatore sul sito
Ciao, come fare lo stesso programma ricercabile per rwo continuo, ho provato e funziona solo una riga, voglio fare lo stesso per la riga sottostante anche per nome diverso
Questo commento è stato fatto dal moderatore sul sito
per favore aiutami non riesco a inserire la formula nella barra della formula quando incollo questa formula e incollo questo =--ISNUMBER(IFERROR(SEARCH($A$12,A2,1),"")) dammi error.type :(
Questo commento è stato fatto dal moderatore sul sito
Grazie, ho usato sopra e funziona perfettamente.... Fino a quando non hai due caselle combinate in un foglio.. Quando vuoi digitare nella seconda casella combinata, evidenzia il testo nella prima casella combinata e non vuole cercare Se lascio vuota la prima casella, la seconda casella funziona bene Per favore aiutatemi
Questo commento è stato fatto dal moderatore sul sito
Ciao, la tua guida è molto utile, ma ho ancora un ultimo problema. Sto provando a fare una fattura semplice e faccio il menu a discesa per la cella del nome del mio cliente, il mio elenco di clienti deve trovarsi nello stesso foglio di lavoro del foglio di lavoro della mia fattura? È possibile che io abbia due fogli di lavoro, "fattura" e "nome cliente", e faccio l'elenco a discesa per il nome del cliente nel foglio di lavoro "fattura"? Grazie
Questo commento è stato fatto dal moderatore sul sito
Grazie per questa suddivisione per rendere ricercabile la casella combinata. Ne ho anche fatti lavorare tre sulla stessa pagina. Il mio problema che ho riscontrato è quando inizio a digitare le informazioni di ricerca e le informazioni si restringono, se premo il tasto freccia giù per selezionare l'elemento nell'elenco Excel si blocca su di me. A qualcuno è successo e, in tal caso, hai trovato un modo per risolvere questo problema.
Questo commento è stato fatto dal moderatore sul sito
Ciao,
Il problema che hai citato non si presenta nel mio caso. Potresti fornire la tua versione di Office?
Questo commento è stato fatto dal moderatore sul sito
Ciao Come nel forum, ho bisogno di avere questo menu a discesa ricercabile per le colonne da 2 a 500. Per favore fatemi sapere come posso poiché la seconda combo replica lo stesso nella prima cosa che non voglio
Questo commento è stato fatto dal moderatore sul sito
Caro Jelbin,
Non riesco a gestire questo. Mi dispiace per quello.
Questo commento è stato fatto dal moderatore sul sito
4. Nella finestra di dialogo Proprietà è necessario: 1). Selezionare False nel campo AutoWordSelect; 2). Specificare una cella nel campo LinkedCell. In questo caso inseriamo A12; Perché A12? Grazie
Questo commento è stato fatto dal moderatore sul sito
Ciao,
Questa cella è facoltativamente selezionata che può aiutare a completare l'intera operazione. Puoi sceglierne uno di cui hai bisogno.
Questo commento è stato fatto dal moderatore sul sito
Ho avuto un problema in corso con tutti i documenti su cui ho utilizzato questo metodo. Un'ombra della casella a discesa riappare al di sotto ogni volta che faccio clic su un'altra cella all'interno del foglio di calcolo e inizio a digitare. È al di là di un semplice fastidio perché quando l'ombra scende, impedisce l'uso di ulteriori caselle a discesa ricercabili. Per favore aiuto!!! Ciò sta interessando più documenti che utilizziamo nella nostra organizzazione.
Questo commento è stato fatto dal moderatore sul sito
Buona giornata,
Scusa se rispondo così tardi. Il problema che hai risolto non appare nel mio caso. Sarebbe bello se potessi fornire la tua versione di Office. Grazie!
Questo commento è stato fatto dal moderatore sul sito
c'è un modo per fare in modo che la casella di ricerca metta il risultato in alto se lasciata vuota? nel caso di questo esempio metterebbe automaticamente la porcellana se fosse lasciata vuota
Questo commento è stato fatto dal moderatore sul sito
Caro Dave,
Potresti fornire uno screenshot del tuo foglio di lavoro che mostra cosa stai esattamente cercando di fare?
Questo commento è stato fatto dal moderatore sul sito
Ciao, grazie per il tutorial! Ho un problema per cui ogni volta che digito nella casella combinata, "DropDownList1" scompare dalla proprietà "ListFillRange". Finché non digito nella casella, se ridigito "DropDownList1" nella proprietà, la casella mostra suggerimenti. Ho controllato tutto e non ho trovato errori. È un problema comune e c'è un modo per risolverlo? Grazie per il tuo tempo!
Questo commento è stato fatto dal moderatore sul sito
Caro Ben,
Sono anche confuso per la scomparsa di "DripDownList" dalla proprietà "ListFillRange"
Ma non influenza il risultato finale di rendere accessibile l'elenco a discesa.
Questo commento è stato fatto dal moderatore sul sito
Mi sento stupido, ma subito dopo aver postato, mi sono reso conto che probabilmente non avevo aggiunto 1 a DropDownList1 nel VBA, e sicuramente era quello il problema! Grazie comunque!
Non ci sono ancora commenti pubblicati qui
Carica Altre
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite