Innehållsförteckning
När du arbetar med en stor databas kan du behöva skapa en lista med data eller text från den givna databasen. Om du gör det manuellt kommer det att kosta dig mycket tid. Excel har vissa funktioner och formler som gör att du enkelt kan skapa din lista från dataremsan. Idag i den här artikeln kommer vi att demonstrera några metoder för att skapa listor från intervallet i Excel.
Ladda ner övningsboken
Ladda ner det här övningsbladet för att öva medan du läser den här artikeln.
Excel-skapa en lista från ett intervall.xlsxSkapa en lista från ett intervall i Excel (3 metoder)
1. Skapa en lista från ett intervall genom att göra en rullgardinslista
Att göra en rullgardinslista är ett utmärkt sätt att skapa listor från ett visst intervall. Med hjälp av en rullgardinslista kan du välja specifika uppgifter på några sekunder. I det här avsnittet kommer vi att diskutera två typer av rullgardinslistor när vi gör en lista från ett intervall. Om du vill veta mer om rullgardinslistan, Klicka här!
i. Oberoende rullgardinslista
I en oberoende rullgardinslista kan du välja dina uppgifter fritt och det finns ingen automatisk uppdatering av uppgifterna. Låt oss lära oss!
Steg 1:
Här i den givna situationen anges några namn på böcker och filmer i "Bokens namn" och "Filmnamn" Vi måste skapa en rullgardinslista från detta dataintervall. För att göra detta skapar vi två kolumner som heter "Boklista" och "Filmlista" under dessa kolumner kommer vi att skapa vår rullgardinslista.
Steg 2:
Klicka nu på cellen E4 under den Boklista kolumnen, gå till Uppgifter och klicka sedan på Validering av data .
E4→Data→Datavalidering
Steg 3:
Ett fönster för datavalidering visas. Välj Lista som kriterium för datavalidering, klicka på knappen Ikon för källfältet för att välja datakälla.
Välj dina uppgifter i kolumnen Boknamn ( $B$4:$B$16) och klicka på OK att fortsätta
Vår rullgardinslista från datalistan Boknamn har skapats.
Steg 4:
På samma sätt gäller för Filmlista upprepar du följande procedurer och väljer i fältet för källan dina data från kolumnen Movie Name ( $C$4:$C$16).
Klicka på Ok för att få fram din rullgardinslista. På så sätt kan du skapa en rullgardinslista genom att skapa en lista från ett dataområde.
ii. Dynamisk rullgardinslista
Steg 1:
En dynamisk rullgardinslista uppdaterar uppgifterna automatiskt. För att skapa en dynamisk rullgardinslista går du till Uppgifter , klicka på Validering av data I fönstret för datavalidering väljer du Lista som valideringskriterier. I fältet för källan infogar du OFFSET formeln är följande,
=OFFSET($B$4,0,0,COUNTIF($B$4:$B$100,""))Var,
- Referens är $B$4
- Rader och kolumner är 0
- [höjd] är COUNTIF($B$4:$B$100,"")
Klicka på Ok för att fortsätta. Vår dynamiska rullgardinslista skapas.
För att kontrollera om den här listan är dynamisk eller inte, ta bort några data från vårt dataområde. Då ser vi att rullgardinslistans data också uppdateras.
Läs mer: Hur man skapar en dynamisk beroende Drop Down-lista i Excel
Steg 2:
För listan Film gör du samma sak som vi visade för listan Boknamn. I det här fallet är det OFFSET formeln är,
=OFFSET($C$4,0,0,COUNTIF($C$4:$C$100,"")Klicka på Ok för att skapa en dynamisk rullgardinslista från ett givet intervall.
2. Skapa en lista från ett intervall med Excel VBA
Användning av Excel VBA kan vi enkelt göra en lista från ett givet datautbud. För att lära oss det följer vi följande procedurer.
Steg 1:
Vi kommer att använda samma datablad för denna procedur. Tryck först på CTRL+F11 för att öppna utvecklarfönstret.
Steg 2:
Ett nytt fönster visas. Här Högerklicka på på det ark där du vill tillämpa VBA code. Välj Insert från de tillgängliga alternativen och klicka på Module.
Steg 3:
I det nya fönstret skriver du ner din VBA Vi tillhandahåller koden här.
Sub UniqueList() 'VBA Dim InputRng As Range, OutRng As Range xTitleId = "Book & Movie Name" Set InputRng = Application.Selection Set InputRng = Application.InputBox("Range:", xTitleId, InputRng.Address, Type:=8) Set OutRng = Application.InputBox("OutPut to (single cell):", xTitleId, Type:=8) For i = 1 To InputRng.Rows.Count For j = 1 To InputRng.Columns.Count OutRng.Value =InputRng.Cells(i, j).Value Set OutRng = OutRng.Offset(1, 0) Next Next End Sub
Du kan ändra inmatningsintervallet enligt dina behov. Klicka på Kör ikon.
Steg 4:
Ett nytt fönster öppnas. Här anger du det dataområde som du ska skapa en lista med. Klicka på Ok för att fortsätta.
I utdatafönstret markerar du nu den cell där du vill ha listan.
Klicka på Ok för att få din lista. Och vårt jobb är gjort.
3. Skapa en lista från ett intervall baserat på ett kriterium
I det här avsnittet skapar vi en lista från ett datavärde baserat på kriterier.
Steg 1:
I följande exempel har vi fått några bok- och filmnamn i Namn på böcker och filmer I kolumnen upprepas vissa namn. Nu ska vi göra en unik lista från denna kolumn där varje namn bara kommer att förekomma en gång.
Steg 2:
I cell D4 under den Unik lista kolumnen, tillämpa den INDEX med den MATCH Formeln. Sätt in värdena och den slutliga formeln blir,
=INDEX(B4:B24,MATCH(0,COUNTIF($D$3:D3,B4:B24),0))Var,
- Förteckningen är B4:B24
- Look_Value för MATCH funktionen är 0
- Området för COUNTIF funktionen är $D$3:D3
- Kriteriet är B4:B24
- Vi vill ha EXAKT matcha ( 0 ).
Den här formeln är en matrisformel, så tryck på "CTRL+SHIFT+ENTER" för att tillämpa denna formel
Steg 3:
Tillämpa nu samma formel på resten av cellerna för att få det slutliga resultatet.
Snabba anteckningar
➤ För att undvika fel, kom ihåg att kontrollera Ignorera Blank och Dropdown i en cell.
➤ När du skapar en dynamisk rullgardinslista ska du se till att cellreferenserna är absoluta (t.ex. $B$4 ) och inte relativt (t.ex. B2 , eller B$2 , eller $B2)
➤ Press CTRL+SHIFT+ENTER för att tillämpa en matrisformel.
Slutsats
Idag har vi diskuterat tre olika procedurer för att skapa en lista från ett givet intervall. Hoppas att den här artikeln är användbar för dig. Om du har några förslag eller förvirring är du välkommen att kommentera.