Tre typer av rullgardinslistor med flera kolumner – Steg-för-steg-guide
När du söker efter "excel rullgardinsmenyn flera kolumner” på Google kan du behöva utföra någon av följande uppgifter:
Visa flera val i listrutan
Metod A: Använder VBA-skript
Metod B: Bara några klick av Kutools för Excel
I den här handledningen kommer vi att demonstrera steg-för-steg hur man uppnår dessa tre uppgifter.
Related Videos
Gör en beroende rullgardinslista baserad på flera kolumner
Som visas i GIF-bilden nedan vill du skapa en huvudrullgardinslista för kontinenterna, en sekundär rullgardinslista som innehåller länder baserat på den kontinent som valts i huvudrullgardinsmenyn, och sedan den tredje rullgardinsmenyn lista som innehåller städer baserat på det land som valts i den sekundära rullgardinsmenyn. Metoden i det här avsnittet kan hjälpa dig att uppnå denna uppgift.
Använda formler för att skapa en beroende rullgardinslista baserad på flera kolumner
Steg 1: Skapa huvudrullgardinsmenyn
1. Välj cellerna (här väljer jag G9:G13) där du vill infoga rullgardinsmenyn, gå till Data fliken, klicka Datagransknings > Datagransknings.
2. I Datagransknings dialogrutan, konfigurera så här.
Steg 2: Skapa den sekundära rullgardinsmenyn
1. Välj hela intervallet som innehåller objekten du vill visa i den sekundära rullgardinsmenyn. Gå till Formler fliken och klicka sedan på Skapa från urval.
2. I Skapa namn från urvalet dialogrutan, kolla bara i Översta raden rutan och klicka sedan på OK knapp.
3. Välj en cell där du vill infoga den sekundära rullgardinsmenyn, gå till Data fliken, klicka Datagransknings > Datagransknings.
4. I Datagransknings dialogrutan måste du:
=INDIRECT(SUBSTITUTE(G9," ","_"))
5. Välj den här rullgardinslistan, dra dess Autofyllhandtag ned för att tillämpa den på andra celler i samma kolumn.
Den sekundära rullgardinsmenyn är nu klar. När du väljer en kontinent i huvudrullgardinslistan visas endast länderna under denna kontinent i den sekundära rullgardinsmenyn.
Steg 3: Skapa den tredje rullgardinsmenyn
1. Välj hela intervallet som innehåller de värden du vill visa i den tredje rullgardinsmenyn. Gå till Formler fliken och klicka sedan på Skapa från urval.
2. I Skapa namn från urvalet dialogrutan, kolla bara i Översta raden rutan och klicka sedan på OK knapp.
3. Välj en cell där du vill infoga den tredje rullgardinsmenyn, gå till Data fliken, klicka Datagransknings > Datagransknings.
4. I Datagransknings dialogrutan måste du:
=INDIRECT(SUBSTITUTE(H9," ","_"))
5. Välj den här rullgardinslistan, dra dess Autofyllhandtag ned för att tillämpa den på andra celler i samma kolumn.
Den tredje rullgardinsmenyn med städer är nu klar. När du väljer ett land i den sekundära rullgardinsmenyn visas endast städerna under detta land i den tredje rullgardinsmenyn.
Ovanstående metod kan vara besvärlig för vissa användare, om du vill ha en mer effektiv och okomplicerad lösning kan följande metod uppnås med bara några klick.
Några klick för att skapa en beroende rullgardinslista baserad på flera kolumner med Kutools för Excel
GIF-bilden nedan visar stegen i Dynamisk rullgardinslista egenskap av Kutools för Excel.
Som du kan se kan hela operationen göras med bara några klick. Du behöver bara:
GIF-bilden ovan visar bara stegen för att skapa en rullgardinslista på två nivåer. Om du vill skapa en rullgardinslista med fler än 2 nivåer, klicka här för att veta mer . Eller ladda ner den 30-dagars gratis provperioden.
Gör flera val i en rullgardinslista i Excel
Det här avsnittet innehåller två metoder som hjälper dig att göra flera val i en rullgardinslista i Excel.
Använda VBA-koder för att göra flera val i en Excel-rullgardinslista
Följande VBA-skript kan hjälpa till att göra flera val i en rullgardinslista i Excel utan dubbletter. Vänligen gör enligt följande.
Steg 1: Öppna VBA-kodredigeraren och kopiera koden
1. Gå till arkfliken, högerklicka på den och välj Visa kod från högerklickmenyn.
2. Sedan Microsoft Visual Basic för applikationer fönstret dyker upp, måste du kopiera följande VBA-kod i Blad (kod) redaktör.
VBA-kod: Tillåt flera val i en rullgardinslista utan dubbletter
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2019/11/13
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
If Target.Count > 1 Then Exit Sub
On Error Resume Next
Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
If xRng Is Nothing Then Exit Sub
Application.EnableEvents = False
If Not Application.Intersect(Target, xRng) Is Nothing Then
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or _
InStr(1, xValue1, ", " & xValue2) Or _
InStr(1, xValue1, xValue2 & ",") Then
Target.Value = xValue1
Else
Target.Value = xValue1 & ", " & xValue2
End If
End If
End If
End If
Application.EnableEvents = True
End Sub
Steg 2: Testa koden
När du har klistrat in koden, tryck på andra + Q för att stänga Visual Editor och gå tillbaka till arbetsbladet.
tips: Den här koden fungerar för alla rullgardinslistor i det aktuella kalkylbladet. Klicka bara på en cell som innehåller rullgardinslistan, välj objekt en efter en från rullgardinsmenyn för att testa om det fungerar.
Några klick för att göra flera val i en Excel-rullgardinslista med Kutools för Excel
VBA-koden har många begränsningar. Om du inte är bekant med VBA-skript är det svårt att ändra koden för att möta dina behov. Här är en rekommenderad kraftfull funktion - Rullgardinslista för flera val som kan hjälpa dig att enkelt välja flera objekt från rullgardinsmenyn.
Efter installera Kutools för ExcelGå till Kutools fliken, välj Listruta > Multi-select rullgardinslista. Konfigurera sedan enligt följande.
- Ange intervallet som innehåller rullgardinsmenyn från vilket du behöver välja flera objekt.
- Ange separator för de markerade objekten i listrutan.
- Klicka OK för att slutföra inställningarna.
Resultat
När du nu klickar på en cell med en rullgardinslista i det angivna intervallet, visas en listruta bredvid den. Klicka bara på "+"-knappen bredvid objekten för att lägga till dem i rullgardinsmenyn och klicka på "-"-knappen för att ta bort alla objekt som du inte vill ha längre. Se demon nedan:
- Kontrollera Radbryt text efter att ha infogat en avskiljare alternativet om du vill visa de markerade objekten vertikalt i cellen. Om du föredrar en horisontell listning, lämna det här alternativet omarkerat.
- Kontrollera Aktivera sökning alternativet om du vill lägga till ett sökfält i din rullgardinslista.
- För att tillämpa den här funktionen, vänligen ladda ner och installera Kutools för Excel först.
Visa flera kolumner i en rullgardinslista
Som visas i skärmdumpen nedan kommer det här avsnittet att visa dig hur du visar flera kolumner i en rullgardinslista.
Som standard visar en rullgardinsmeny för datavalidering endast en kolumn med objekt. För att visa flera kolumner i en rullgardinslista rekommenderar vi att du använder en kombinationsruta (ActiveX Control) istället för en rullgardinsmeny för datavalidering.
Steg 1: Sätt i en kombinationsruta (ActiveX Control)
1. Gå till Utvecklare fliken, klicka Insert > Kombinationsbox (ActiveX Control).
Tips: Om Utvecklare fliken visas inte i menyfliksområdet, du kan följa stegen i denna handledning "Visa fliken Utvecklare" för att visa det.
2. Rita sedan en Kombinationsrutan i en cell där du vill visa rullgardinsmenyn.
Steg 2: Ändra egenskaperna för kombinationsrutan
1. Högerklicka på kombinationsrutan och välj sedan Våra Bostäder från snabbmenyn.
2. I Våra Bostäder dialogrutan, konfigurera så här.
Steg 3: Visa de angivna kolumnerna i rullgardinsmenyn
1. Under Utvecklare fliken, stäng av Designläge genom att bara klicka på Designläge ikonen.
2. Klicka på pilen i kombinationsrutan, listan utökas och du kan se det angivna antalet kolumner som visas i rullgardinsmenyn.
Steg 4: Visa objekt från andra kolumner i vissa celler
1. Välj en cell under kombinationsrutan, ange formeln nedan och tryck på ange för att få värdet för den andra kolumnen i samma rad.
=IFERROR(VLOOKUP(B1,B3:F6,2,FALSE),"")
2. För att få värdena för den tredje, fjärde och femte kolumnen, använd följande formler en efter en.
=IFERROR(VLOOKUP(B1,B3:F6,3,FALSE),"")
=IFERROR(VLOOKUP(B1,B3:F6,4,FALSE),"")
=IFERROR(VLOOKUP(B1,B3:F6,5,FALSE),"")
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.
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
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 för dig varje dag!