Innehållsförteckning
I den här handledningen kommer jag att visa några metoder för att sortera en rullgardinslista i Excel. Ofta när vi arbetar med många data eller repetitiva data, om vi kan sortera dem alfabetiskt eller någon annan typ av ordning, blir det lättare att navigera i rullgardinslistan. Så jag kommer att visa hur man ordnar listans data först och därmed använda Validering av data för att skapa en rullgardinsmeny.
Ladda ner övningsboken
Du kan ladda ner arbetsboken som vi har använt för att förbereda den här artikeln.
Sortera drop-down.xlsm5 metoder för att sortera Drop Down i Excel
1. Använd Excel SORT-funktionen för att ordna och skapa en listrista
Först kommer jag att använda funktionen SORT för att ordna data i alfabetisk ordning. Jag har till exempel ett dataset ( B4:C13 ) som innehåller flera fruktnamn i slumpmässig ordning. Nu ska jag ordna dem först.
Steg:
- Skriv nedanstående formel i Cell E5 och slå på Gå in på .
=SORT(B5:B13)
- Formeln ger en array med fruktlistan som är sorterad i stigande alfabetisk ordning.
⏩ Skapa listrutan:
Steg:
- Markera först någon av cellerna eller hela datafältet där du vill skapa rullgardinslistan.
- Därefter, från Excel-bandet , gå till Uppgifter > Verktyg för data grupp> Validering av data > Validering av data (Se skärmbilden).
- Därefter är det Validering av data dialogrutan visas. Välj Lista från fältet: Tillåt . Att välja Lista alternativet kommer att visa fältet: Källa . Klicka på den övre pilen i Källa för att välja källdata.
- Ange nu källdata och tryck på Gå in på Här har vi använt ' # ' i slutet av källdata eftersom vi vill att hela matrisen med sorterade data ska ingå i rullgardinslistan.
- Klicka sedan på OK .
- Som en följd av detta skapas rullgardinslistan som förväntat.
Relaterat innehåll: Hur man ordnar nummer i stigande ordning i Excel med hjälp av en formel
2. Kombination av SORT & UNIQUE-funktioner för att sortera listrutan
Ibland innehåller en datalista upprepade värden. I det fallet vill du kanske inte ha liknande uppgifter flera gånger i en rullgardinslista. Nedanstående datauppsättning innehåller till exempel Orange , Kokosnöt , och Apple flera gånger. Nu kommer jag alltså att använda kombinationen av SORT och UNIK funktioner för att sortera dessa uppgifter.
Steg:
- Skriv nedanstående formel i Cell E5 .
=UNIK(SORT(B5:B13))
- Formeln ovan kommer att resultera i en matris med unika fruktnamn.
- Likt Metod 1 , med hjälp av Validering av data kan du få en rullgardinslista från de ovan sorterade fruktnamnen.
Läs mer: Hur man sorterar unika listor i Excel (10 användbara metoder)
3. Excel-funktioner med möjlighet att definiera namn för att organisera listrutan
Den här gången kommer jag att använda Definiera namn för att få en sorterad lista. Jag har till exempel ett dataset med fruktnamn ( A1:A10 ) i Blad 1 Vi sorterar uppgifterna i alfabetisk ordning.
Steg:
- Gå till Formler > Definiera namn > Definiera namn .
- Nytt namn Dialogrutan öppnas som ett resultat av detta. Ange Frukt på fältet: Namn och skriv nedanstående formel i fältet: Hänvisar till . press OK efter det.
=OFFSET(Sheet1!$A$1, 0, 0, 0, COUNTA(Sheet1!$A$1:$A$1001))
- Gå nu till ett annat blad ( Blad2 ). Skriv nedanstående formel i Cell A1 och slå på Gå in på .
=IF(COUNTA(Fruit)>=ROWS($A$1:A1), INDEX(Fruit, MATCH(SMALL(COUNTIF(Fruit, "<"&Fruit), ROW(A1)),COUNTIF(Fruit, "<"&Fruit), 0)), ""), "")
- Formeln ovan ger ett fruktnamn som kommer först i alfabetisk ordning. Dra ner ' + ' för att få fram resten av fruktnamnen.
- Slutligen, när du drar ner ' + ' kommer vi att få en lista över fruktnamn. ordnade i alfabetisk ordning.
- Därefter kan du skapa en rullgardinslista med hjälp av Validering av data alternativet, efter Metod 1 Kom ihåg att du den här gången måste välja listan ovan med sorterade fruktnamn som källdata.
Läs mer: Sortera efter namn i Excel (3 exempel)
Liknande läsningar:
- Sortera intervall med VBA i Excel (6 exempel)
- Sortera tal i Excel (8 snabba sätt)
- Hur man sorterar Array med Excel VBA (både stigande och fallande ordning)
- [Fix] Excel sortera efter datum fungerar inte (2 orsaker med lösningar)
- Excel sorterar och ignorerar tomrum (4 sätt)
4. Använd Excel Power Query för att sortera drop down-data
Nu kommer jag att använda Excel Power Query för att sortera en datalista. För att underlätta min operation har jag konverterat min datamängd till en tabell genom att trycka på Ctrl + T .
Steg:
- Välj först tabellen ( B4:C13 ).
- Gå sedan till Uppgifter > Från tabell/intervall .
- Som ett resultat av detta har Redigerare för Power Query öppnas tillsammans med tabellen.
- Högerklicka nu på tabellen och klicka på Ta bort andra kolumner eftersom vi inte behöver några extra kolumner.
- Klicka på rullgardinsymbolen i fruktkolumnen och klicka igen på Sortera i stigande riktning .
- Fruktförteckningen kommer följaktligen att sorteras i alfabetisk ordning.
- När du är klar med sorteringen väljer du Stäng & Ladda > Stäng & Ladda från Redigerare för Power Query .
- Som en följd av detta visas tabellen med sorterade fruktnamn enligt nedan.
- Senare kan du skapa en rullgardinslista från Adobe-tabellens data.
Relaterat innehåll: Automatisk sortering i Excel när data ändras (9 exempel)
5. Beställ Drop Down List med VBA i Excel
Här kommer jag att använda VBA för att sortera fruktnamnen i alfabetisk ordning. Vi har till exempel en rullgardinslista där fruktnamnen inte är sorterade i någon ordning.
Jag ska därför visa hur du ordnar ovanstående rullgardinslista i alfabetisk ordning.
Steg:
- Först går jag till det ark där källdata för ovanstående rullgardinslista finns. Här finns mina källdata i Blad8 .
- Högerklicka sedan på arkets namn och välj Visa kod .
- Detta har lett till att, Microsoft Visual Basic för tillämpningar fönstret kommer att visas. Skriv nedanstående kod i fönstret Modul Kom ihåg att du har gått in i Namn på bladet , Tabellens namn , och Namn på kolumnen av dig på rätt sätt.
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim rngSort As Range 'Ange referens till tabellen och kolumnen som ska sorteras Set rngSort = ThisWorkbook.Worksheets("Sheet8").Range("FruitName[Fruit]") 'Använd Range.Sort-metoden för att tillämpa sorteringen rngSort.Sort _ Key1:=rngSort, _ Order1:=xlAscending, _ Header:=xlYes End Sub
- Gå nu till källdatatabellen och skriv en frukt som ' Datum ' i Cell B14 , efter den sista uppgiften i tabellen ( B4:B13 ). Gå in på efter det.
- Uppgifterna i tabellen ovan är därför sorterade i alfabetisk ordning.
- På samma sätt är frukterna i den rullgardinslista som skapades tidigare också sorterade i alfabetisk ordning.
Läs mer: Hur man sorterar ListBox med VBA i Excel (en komplett guide)
Slutsats
I artikeln ovan har jag försökt diskutera flera metoder för att sortera en rullgardinslista i Excel utförligt. Förhoppningsvis är dessa metoder och förklaringar tillräckliga för att lösa dina problem. Låt mig veta om du har några frågor.