Hur väljer jag flera objekt från rullgardinsmenyn i en cell i Excel?
Listrutan används ofta i Excel dagliga arbete. Som standard kan endast ett objekt väljas i en listruta. Men ibland kan du behöva välja flera objekt från listrutan i en enda cell som visas nedan. Hur kan du hantera det i Excel?
Välj flera objekt från listrutan till en cell med VBA
Välj flera objekt från rullgardinsmenyn till en cell enkelt och snabbt
Välj flera objekt från listrutan till en cell med VBA
Här är några VBA som kan hjälpa dig att lösa det här jobbet.
Välj dubbletter från rullgardinsmenyn i en cell
1. När du har skapat en rullgardinslista högerklickar du på arkfliken för att välja Visa kod från snabbmenyn.
2. Sedan i Microsoft Visual Basic för applikationer fönster, kopiera och klistra in under koden i det tomma skriptet.
VBA: Välj flera objekt från rullgardinsmenyn i en cell
Private Sub Worksheet_Change(ByVal Target As Range)
'UpdatebyExtendoffice20221111
Dim xRgVal As Range
Dim xStrNew As String
On Error Resume Next
Set xRgVal = Cells.SpecialCells(xlCellTypeAllValidation)
If (Target.Count > 1) Or (xRgVal Is Nothing) Then Exit Sub
If Intersect(Target, xRgVal) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
Application.EnableEvents = False
xStrNew = Target.Value
Application.Undo
If xStrNew = Target.Value Then
Else
xStrNew = xStrNew & " " & Target.Value
Target.Value = xStrNew
End If
Application.EnableEvents = True
End Sub
3. Spara koden och stäng fönstret för att gå tillbaka till listrutan. Nu kan du välja flera objekt i listrutan.
Obs:
1. Med VBA separerar det objekten efter utrymme, du kan ändra xStrNew = xStrNew & "" & Målvärde till andra att ändra avgränsaren efter behov. Till exempel, xStrNew = xStrNew & "," & Målvärde separerar objekten med komma.
2. Denna VBA-kod fungerar för alla rullgardinslistor i arket.
Välj flera objekt från listrutan till en cell utan att upprepa
Om du bara vill välja unika objekt från listrutan till en cell kan du upprepa ovanstående steg och använda koden nedan.
VBA : Välj flera objekt från listrutan till en cell utan att upprepa
Private Sub Worksheet_Change(ByVal Target As Range)
'UpdatebyExtendoffice20221111
Dim I As Integer
Dim xRgVal As Range
Dim xStrNew As String
Dim xStrOld As String
Dim xFlag As Boolean
Dim xArr
On Error Resume Next
Set xRgVal = Cells.SpecialCells(xlCellTypeAllValidation)
If (Target.Count > 1) Or (xRgVal Is Nothing) Then Exit Sub
If Intersect(Target, xRgVal) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
Application.EnableEvents = False
xFlag = True
xStrNew = " " & Target.Value & " "
Application.Undo
xStrOld = Target.Value
If InStr(1, xStrOld, xStrNew) = 0 Then
xStrNew = xStrNew & xStrOld & " "
Else
xStrNew = xStrOld
End If
Target.Value = xStrNew
Application.EnableEvents = True
End Sub
Båda ovanstående VBA-koder stöder inte att ta bort delar av cellinnehåll, bara stöd för att rensa alla objekt i cellen.
Välj flera objekt från rullgardinsmenyn till en cell enkelt och snabbt
I Excel, förutom VBA-kod, finns det inga andra sätt att tillåta flera objekt valda från rullgardinsmenyn i en cell. Men den Multi-select rullgardinslista egenskap av Kutools för Excel kan snabbt och enkelt hantera detta jobb med klick.
Steg 1: Välj Kutools > Rullgardinslista > Multi-select rullgardinslista
Steg 2: Ange inställningarna i rullgardinsmenyn för flera val
- Ställ in omfattning;
- Ange separator för avgränsningsobjekt i en cell;
- Bestäm textriktningen;
- Klicka på OK.
Resultat:
Skapa enkelt en dynamisk listruta med två nivåer eller flera nivåer i Excel
|
I Excel är det komplext att skapa en rullgardinslista på två nivåer eller flera nivåer. Här är Dynamisk rullgardinslista nytta av Kutools för Excel kan göra dig en tjänst. Vad du bara ska göra är att beställa data som visas i exemplet, sedan välja dataintervall och utmatningsområde och sedan lämna det till verktyget. Klicka i 30 dagars gratis provperiod! |
Kutools för Excel: med mer än 300 praktiska Excel-tillägg, gratis att prova utan begränsning på 30 dagar. |
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!