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

Hur skapar jag en sökbar listruta i Excel?

För en rullgardinslista med många värden är det inte lätt att hitta ett lämpligt värde från listan. Vi har tidigare introducerat en metod för att automatiskt fylla i en rullgardinslista när den första bokstaven skrivs in. Utöver autokompletteringsfunktionen kan du även göra rullgardinsmenyn sökbar för att förbättra effektiviteten för att hitta rätt värde i rullgardinsmenyn. För att göra rullgardinsmenyn sökbar kan du följa metoderna nedan steg för steg.

Skapa en sökbar rullgardinslista i Excel
Skapa enkelt en sökbar rullgardinslista med ett fantastiskt verktyg

Fler handledning för rullgardinsmenyn ...


Skapa en sökbar rullgardinslista i Excel

Anta att du har en lista med landsnamn i kolumn A som visas i skärmdumpen nedan, och nu vill du använda dem som källdata för söklistans rullgardinslistor, kan du göra enligt följande för att få det gjort.

Du måste infoga en kombinationsruta istället för en rullgardinsmeny för datavalidering i ditt kalkylblad.

1. Om Utvecklare fliken inte visas på menyfliksområdet, kan du aktivera Utvecklare fliken enligt följande.

1). Klicka på i Excel 2010 eller senare versioner Fil > Tillbehör. Och i Excel-alternativ dialogrutan, klicka Skräddarsy bandet i den vänstra rutan. Gå till listrutan Anpassa menyfliksområdet, markera Utvecklare och klicka sedan på OK knapp. Se skärmdump:

2). Klicka på i Excel 2007 office knapp> Excel-alternativ. I Excel-alternativ dialogrutan, klicka Populära i den vänstra rutan, kontrollera Visa fliken Utvecklare i menyfliksområdet och slutligen klicka på OK knapp.

2. Efter att ha visat Utvecklare fliken, klicka Utvecklare > Insert > Combo box

3. Rita en kombinationsruta i kalkylbladet, högerklicka på den och välj sedan Fastigheter från högerklickmenyn.

4. I Fastigheter dialogrutan måste du:

1). Välj Falsk i AutoWordVälj fält;
2). Ange en cell i LinkedCell fält. I det här fallet går vi in ​​i A12;
3). Välj 2-fmMatchEntryNone i MatchEntry fält;
4). Typ Dropdownlist i ListFillRange fält;
5). Stäng Fastigheter dialog ruta. Se skärmdump:

5. Stäng nu av designläget genom att klicka Utvecklare > Designläge.

6. Välj en tom cell som C2, ange formeln nedan och tryck ange. De drar dess Autofyll-handtag ner till cell C9 för att automatiskt fylla cellerna med samma formel. Se skärmdump:

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

Anmärkningar:

1. $ A $ 12 är cellen som du har angett som LinkedCell i steg 4;
2. Efter att ha avslutat stegen ovan kan du nu testa: skriv in en bokstav C i kombinationsrutan, och sedan kan du se att formelcellerna som refererar till cellerna som innehåller tecknet C är fyllda med siffran 1.

7. Välj cellen D2, ange formeln nedan och tryck ange. Dra sedan dess Autofyll-handtag ner till cellen D9.

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

8. Välj cell E2, ange formeln nedan och tryck ange. Dra sedan dess Autofyll-handtag ner till E9 för att tillämpa samma formel.

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

9. Nu måste du skapa ett namnintervall. var god klicka Formel > Definiera namn.

10. I Nytt namn dialogrutan, skriv DropdownlistNamn anger du formeln nedan i rutan Refererar till och klicka sedan på OK knapp.

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

11. Slå nu på designläget genom att klicka Utvecklare > Designläge. Dubbelklicka sedan på kombinationsrutan för att öppna Microsoft Visual Basic för applikationer fönster.

12. Kopiera och klistra in VBA-koden nedan i kodredigeraren.

VBA-kod: gör sökruta till sökbar

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

13. tryck på andra + Q för att stänga Microsoft Visual Basic för applikationer fönster.

Från och med nu, när ett tecken skrivs in i kombinationsrutan, kommer det att göra en suddig sökning och sedan lista de relevanta värdena i listan.

Anmärkningar: Du måste spara den här arbetsboken som en Excel Macro-Enabled Workbook-fil för att behålla VBA-koden för framtida bruk.


Skapa enkelt en sökbar rullgardinslista med ett fantastiskt verktyg

Det verkar som att ovanstående metod inte är lätt att hantera. Här rekommenderas en praktisk funktion - Sökbar rullgardinslista of Kutools för Excel för att enkelt skapa en sökbar listruta i Excel.

Innan du ansöker Kutools för ExcelBer ladda ner och installera det först.

Gör så här för att skapa en sökbar rullgardinslista med funktionen Sökbar rullgardinslista.

1. klick Kutools > Listrutan > Sökbar rullgardinslista > Aktivera sökbar rullgardinslista.

2. I öppningen Kutools för Excel dialogrutan (denna dialogruta dyker bara upp första gången du använder den här funktionen), klicka på Ja knapp.

3. Sedan i Sökbar rullgardinslista i dialogrutan måste du konfigurera enligt följande.

3.1) I Ansök till avsnitt kan du ange räckvidd för tillämpning av den här funktionen:
A: Specificerat intervall: Stöd ett eller flera rullgardinsmenyer;
B: Specificerat omfattning: Stöd nuvarande kalkylblad, aktuell arbetsbok eller alla arbetsböcker.
3.2) I Tillbehör avsnitt, det finns två alternativ, du kan välja ett av dem, båda eller ingen av dem enligt dina behov:
A: Matchar bara början av ordet: Om det här alternativet är markerat visas endast de objekt som börjar med det inskrivna tecknet. Under tiden kommer det första som visas automatiskt att slutföras; Om det här alternativet inte är markerat visas objekt som innehåller det skrivna tecknet.
B: Skiftlägeskänsliga: Om det här alternativet är markerat visas endast objekten som matchar skiftläge för det inskrivna tecknet; Om det här alternativet är avmarkerat kommer objekt som innehåller det inskrivna tecknet att visas utan skiftlägeskänslighet.
3.3) I Läge väljer du läget för att lägga till listobjekt i rullgardinsmenyn till celler.
A: Bifoga: Om du väljer den här alternativknappen kommer flera sökta objekt (inklusive dubbletter) att tillåtas läggas till i en cell. Efter att ha lagt till det första sökta objektet i en cell, om du gör en ny sökning i den cellen igen, kommer det nya sökta objektet att läggas till i slutet av det befintliga.
i Separator textruta, ange en avgränsare för att separera de tillagda objekten;
i Textriktning väljer du en riktning för att visa de tillagda objekten i rullgardinslistan.
B: Ändra: Om du väljer den här alternativknappen kommer det senare tillagda objektet att skriva över det befintliga. Endast ett objekt får visas i cellen åt gången.
3.3) Klicka OK.

4. Klicka sedan Kutools > Listrutan > Sökbar rullgardinslista > Aktivera sökbar rullgardinslista för att aktivera den här funktionen.

Nu har den sökbara rullgardinsmenyn skapats. När du klickar på en rullgardinslista kommer en listruta att dyka upp med alla rullgardinsobjekt listade. Ange ett tecken och motsvarande objekt kommer att sökas upp på en gång, och du kan klicka på det önskade objektet för att infoga det i den cellen.

Om du väljer Vågrätt i Textriktning sektion: alla tillagda objekt kommer att visas horisontellt i en cell. Se nedanstående demo:

Om du väljer Vertikalt i Textriktning avsnitt: alla tillagda objekt kommer att visas vertikalt i en cell. Se nedanstående demo:

Om du valde Ändra alternativknapp får endast ett objekt visas i en rullgardinscell åt gången. Se nedanstående demo:

Klicka för att veta mer om den här funktionen.

  Om du vill ha en gratis testversion (30 dagar) av det här verktyget, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.


Relaterade artiklar:

Autoslutför när du skriver i Excel-rullgardinsmenyn
Om du har en rullgardinsmeny för datavalidering med stora värden måste du bläddra nedåt i listan bara för att hitta rätt eller skriva hela ordet direkt i listrutan. Om det finns en metod för att automatiskt slutföra när du skriver den första bokstaven i rullgardinsmenyn blir allt enklare. Denna handledning ger metoden för att lösa problemet.

Skapa rullgardinslista från en annan arbetsbok i Excel
Det är ganska enkelt att skapa en rullgardinslista för datavalidering bland kalkylblad i en arbetsbok. Men om listdata du behöver för datavalideringen hittar du i en annan arbetsbok, vad skulle du göra? I den här guiden lär du dig hur du skapar en drop-down-lista från en annan arbetsbok i Excel i detalj.

Skapa en sökbar rullgardinslista i Excel
För en rullgardinsmeny med många värden är det inte lätt att hitta en riktig. Tidigare har vi introducerat en metod för automatisk komplettering av rullgardinsmenyn när du anger den första bokstaven i rullgardinsmenyn. Förutom funktionen för autoslutförande kan du också göra listrutan sökbar för att förbättra arbetseffektiviteten för att hitta rätt värden i listrutan. För att göra rullgardinsmenyn sökbar, prova metoden i den här självstudien.

Fyll i andra celler automatiskt när du väljer värden i Excel-listrutan
Låt oss säga att du har skapat en rullgardinslista baserat på värdena i cellområdet B8: B14. När du väljer något värde i listrutan vill du att motsvarande värden i cellintervall C8: C14 fylls automatiskt i en vald cell. För att lösa problemet kommer metoderna i denna handledning att göra dig en tjänst.

Mer handledning för rullgardinsmenyn ...


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2019 och 365. Stöder alla språk. Enkel distribution i ditt företag eller organisation. Fullständiga funktioner 30-dagars gratis provperiod. 60-dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50% och minskar hundratals musklick åt dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (63)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
väldigt bra förklarat. Älskade det. Tack !!
Prastuti
Denna kommentar minimerades av moderatoren på webbplatsen
Utmärkt inlägg. Kan du förklara hur du kopierar samma rullgardinslista till flera celler. Jag vill skapa en utgiftsrapport och jag vill kunna välja en annan utgift på varje rad från samma rullgardinslista. Tack.
cristina
Denna kommentar minimerades av moderatoren på webbplatsen
jag har samma behov
Pierpaolo
Denna kommentar minimerades av moderatoren på webbplatsen
Av någon anledning när jag klickar på ett urval från rullgardinsmenyn efter att ha skrivit några tecken blir rullgardinsmenyn tomt... någon aning om varför detta skulle hända och hur man får det att sluta? Jag har en kommandoknapp som jag vill klicka på för att sedan placera markeringen i nästa tillgängliga cell i ett givet intervall, men återigen släcks värdet när jag klickar på det.
MarkC
Denna kommentar minimerades av moderatoren på webbplatsen
Jag har exakt samma problem. Jag gjorde allt rätt men rullgardinsetiketten blir bara tom varje gång jag trycker på enter. Om du kom på det, dela gärna!
jag arg
Denna kommentar minimerades av moderatoren på webbplatsen
Min fungerar inte. Min rullgardinsetikett fungerade inte i "egenskaper" för kombinationsrutan. Varje gång jag gick in i den försvann den. Så jag använde "test" istället. Jag justerade makrot med ordtestet istället för dropdowmlist. Låt mig veta om det finns något mer jag kan göra? Sökningen fungerar inte.
jag arg
Denna kommentar minimerades av moderatoren på webbplatsen
[quote]Min fungerar inte. Min rullgardinsetikett fungerade inte i "egenskaper" för kombinationsrutan. Varje gång jag gick in i den försvann den. Så jag använde "test" istället. Jag justerade makrot med ordtestet istället för dropdowmlist. Låt mig veta om det finns något mer jag kan göra? Sökningen fungerar inte.Av imad[/quote] Jag har sett det här "hur man gör en autofyll / autoförslag DDL / kombinationsruta" på några olika webbplatser och de vill ALLA att du ska sätta "något" i fältet ListFillRange INNAN de har skapat ett namnintervall genom att att klicka på Formel > Definiera namn och ListFillRange kommer alltid att bli tomt i fönstret Egenskaper TILLs du definierar namnet (Formel > Definiera namn) DET är därför jag tror att IMAD, ovan och MAARTEN nedan hade problemet - dock inte 100% säker.
Herb123987
Denna kommentar minimerades av moderatoren på webbplatsen
Så jag har äntligen fått det att fungera! Jag kopplade den länkade cellen till en vlookup och fick all information på rad. Jag undrade om det kunde finnas någon förlängning på vba för att faktiskt filtrera tabellen medan vi skriver?
jag arg
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, jag kan inte fylla i 'DropDownList' i 'ListFillRange'... Vad är det som har hänt? Jag förstår inte lösningen med imad. Tack.
Maarten
Denna kommentar minimerades av moderatoren på webbplatsen
försök att sätta detta=--ISNUMBER(IFERROR(SEARCH($A$12,$A$2,1),"")) istället =--ISNUMBER(IFERROR(SEARCH($A$12,A2,1),"") ) i steg 6
andone
Denna kommentar minimerades av moderatoren på webbplatsen
[quote]Hej, jag kan inte fylla i 'DropDownList' i 'ListFillRange'... Vad är det som har hänt? Jag förstår inte lösningen med imad. Tack.Av Maarten[/quote] Jag postade det här svaret ovan för IMAD och såg det här inlägget här nere för MAARTEN så jag tänkte att jag skulle lägga upp det här för honom också. Jag har sett detta "hur man gör en autofyll / autoförslag på DDL / kombinationsruta" på några olika webbplatser och de vill ALLA att du ska sätta "något" i fältet ListFillRange Properties INNAN de har dig skapa ett namngivet intervall genom att klicka på Formel > Definiera namn ....... och ListFillRange blir alltid tomt i fönstret Egenskaper TILLs du definierar namnet (Formel > Definiera namn) DET är därför jag tror att IMAD, ovan och MAARTEN nedan (här) hade problemet - dock inte 100% säker.
Herb123987
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, tack så mycket för din lösning. Jag har redan gett upp, men jag ska försöka igen.
Maarten
Denna kommentar minimerades av moderatoren på webbplatsen
Tack.. Mycket hjälpsam.. Gud välsigne dig
FAUZI
Denna kommentar minimerades av moderatoren på webbplatsen
Jag, som Cristina ovan, skulle också vilja veta hur man gör flera kombinationsrutor för ett ark. Jag försökte men när jag börjar skriva i den andra kombinationsrutan händer två saker: 1. ingen rullgardinslista visas, och 2. den enkla handlingen att skriva i combobox2 aktiverar valet från min ursprungliga kombinationsruta1 och markerar det i rullgardinsmenyn från combobox1. Jag kontrollerade att all min kodning säger combobox2 för combobox2 etc. för de andra rutorna men det finns en frånkoppling som jag inte kan lista ut.
Yesenia
Denna kommentar minimerades av moderatoren på webbplatsen
Jag har exakt samma problem, har du lyckats med en lösning än??
Jaydie
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Herb, Vad händer om jag skapade en rullgardinslista från ett annat arbetsblad? formeln " =--ISNUMBER(IFERROR(SEARCH($A$2,H2,1),""))" har fel referens och när jag redigerar den tillåter den inte att placera rätt cell. vad föreslår ni? tack
Ahmed Shahin
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, hur man gör samma sökbara program för kontinuerlig rwo, jag försökte och det fungerar bara en rad, jag vill göra samma sak för under raden också för olika namn
Ashok
Denna kommentar minimerades av moderatoren på webbplatsen
snälla hjälp mig att jag inte kan ange formel i formelfältet när jag klistrar in den här formeln och klistrar in denna =--ISNUMBER(IFERROR(SÖK($A$12,A2,1),"")) ge mig error.type :(
NAJMA
Denna kommentar minimerades av moderatoren på webbplatsen
Tack, jag använde ovan och det fungerar perfekt.... Tills du har två kombinationsrutor i ett ark.. När du vill skriva i den andra kombinationsrutan markerar den texten i den första kombinationsrutan och vill inte söka Om jag lämnar den första rutan tom fungerar den andra rutan bra Snälla hjälp
Jaydie
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, din guide är till stor hjälp, men jag stöter fortfarande på ett sista problem. Jag försöker göra en enkel faktura, och gör rullgardinsmenyn för min kundnamnscell, måste min kundlista finnas i samma kalkylblad som mitt fakturakalkylblad? Är det möjligt att jag har två kalkylblad, "faktura" och "kundnamn", och gör rullgardinsmenyn för kundnamn vid "faktura" kalkylblad? Tack
Heric
Denna kommentar minimerades av moderatoren på webbplatsen
Tack för denna uppdelning för att göra kombinationsrutan sökbar. Jag har till och med fått tre av dem att arbeta på samma sida. Mitt problem jag har stött på är när jag börjar skriva in sökinformationen och informationen minskar, om jag trycker på nedåtpilen för att välja objektet i listan kraschar Excel på mig. Har någon råkat ut för detta, och i så fall har du hittat ett sätt att lösa problemet.
Havocknox
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,
Problemet du nämnde förekommer inte i mitt fall. Kan du ange din Office-version?
kristall
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Som i forumet måste jag ha den här sökbara rullgardinsmenyn för kolumner 2 till 500. Låt mig veta hur jag kan eftersom den andra kombinationen replikerar detsamma i första vilket jag inte vill ha
Jelbin
Denna kommentar minimerades av moderatoren på webbplatsen
Kära Jelbin,
Klarar inte det här. Förlåt för det.
kristall
Denna kommentar minimerades av moderatoren på webbplatsen
4. I dialogrutan Egenskaper behöver du: 1). Välj False i fältet AutoWordSelect; 2). Ange en cell i fältet LinkedCell. I det här fallet går vi in ​​på A12; Varför A12? tack
Gunawan Budianto
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,
Denna cell är valfritt vald vilket kan hjälpa till att avsluta hela operationen. Du kan välja vilken som helst som du behöver.
kristall
Denna kommentar minimerades av moderatoren på webbplatsen
Jag har haft ett pågående problem med alla dokument jag har använt den här metoden på. En skugga av rullgardinsmenyn dyker upp igen under den varje gång jag klickar in i en annan cell i kalkylarket och börjar skriva. Det är mer än bara en olägenhet för när skuggan faller ner förhindrar den användning av ytterligare sökbara rullgardinsrutor. Snälla hjälp!!! Detta påverkar flera dokument som vi använder i hela vår organisation.
Al B
Denna kommentar minimerades av moderatoren på webbplatsen
God dag,
Förlåt för att jag svarar så sent. Problemet du åtgärdade visas inte i mitt fall. Det skulle vara trevligt om du kunde tillhandahålla din Office-version. Tack!
kristall
Denna kommentar minimerades av moderatoren på webbplatsen
finns det något sätt att få sökrutan att placera det översta resultatet om det lämnas tomt? i fallet med det här exemplet skulle det automatiskt lägga till Kina om det lämnades tomt
dave
Denna kommentar minimerades av moderatoren på webbplatsen
Kära dave,
Kan du ge en skärmdump av ditt kalkylblad som visar exakt vad du försöker göra?
kristall
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, tack för handledningen! Jag har ett problem där varje gång jag skriver i kombinationsrutan försvinner "DropDownList1" från egenskapen "ListFillRange". Så länge jag inte skriver i rutan, om jag skriver om "DropDownList1" i egenskapen, visar rutan förslag. Jag har kollat ​​igenom allt och hittade inga fel. Är detta ett vanligt problem och finns det något sätt att fixa det? Tack för din tid!
Ben Johnston
Denna kommentar minimerades av moderatoren på webbplatsen
Kära Ben,
Jag är också förvirrad över att "DripDownList" försvinner från egenskapen "ListFillRange"
Men det påverkar inte det slutliga resultatet av att göra rullgardinslistan sökbar.
kristall
Denna kommentar minimerades av moderatoren på webbplatsen
Jag känner mig dum, men direkt efter inlägget insåg jag att jag förmodligen inte hade lagt till 1:an i DropDownList1 i VBA, och det var nog det som var problemet! Tack ändå!
Ben Johnston
Det finns inga kommentarer här ännu
Ladda fler
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0  Tecken
Föreslagna platser