Hoe kunt u snel items verplaatsen tussen twee lijstvakken in Excel?
Heeft u ooit geprobeerd om items van het ene lijstvak naar een ander lijstvak te verplaatsen, zoals u nodig heeft, zoals in de onderstaande schermafbeelding wordt getoond? Hier zal ik het hebben over deze bewerking in Excel.
![]() | ![]() | ![]() |
Items verplaatsen tussen lijstvakken
Items verplaatsen tussen lijstvakken
Er is geen ingebouwde functie die u kan helpen om de taak te voltooien, maar ik heb een VBA-code die kan helpen.
1. Maak eerst een lijst met gegevens die worden weergegeven als de items in de lijstvakken op een nieuw werkblad dat Admin_Lists heet.
2. Selecteer vervolgens deze gegevens en ga naar het Naamvak om ze een naam ItemList te geven. Zie schermafbeelding:
3. Klik vervolgens in een werkblad dat de twee lijstvakken zal bevatten, op Ontwikkelaar > Invoegen > Lijstvak (ActiveX-besturingselement), en teken twee lijstvakken. Zie schermafbeelding:
![]() | ![]() | ![]() |
Als het tabblad Ontwikkelaar verborgen is in uw lint, Hoe kunt u het tabblad Ontwikkelaar weergeven in Excel 2007/2010/2013 Ribbon? Dit artikel legt uit hoe u het zichtbaar maakt.
4. Then click Developer > Insert > Command Button(Active X Control), and draw four buttons between two list boxes. See screenshot:
![]() | ![]() | ![]() |
Nu de vier opdrachtknoppen hernoemen met nieuwe namen.
5. Selecteer de eerste opdrachtknop, klik op Eigenschappen, en geef in het deelvenster Eigenschappen de naam BTN_moveAllRight, en typ >> in het tekstvak naast Bijschrift. Zie schermafbeelding:
6. Herhaal stap 5 om de laatste drie opdrachtknoppen met onderstaande namen te hernoemen, en typ ook verschillende pijlen in de bijschriften. Zie schermafbeelding:
BTN_MoveSelectedRight
BTN_moveAllLeft
BTN_MoveSelectedLeft
![]() | ![]() | ![]() |
7. Klik met de rechtermuisknop op de naam van het werkblad dat de lijstvakken en opdrachtknoppen bevat, en selecteer Code weergeven in het contextmenu. Zie schermafbeelding:
8. Kopieer en plak de onderstaande macrocode in het Module-script, sla de code op en sluit het venster Microsoft Visual Basic for Applications. Zie schermafbeelding:
VBA: Items verplaatsen tussen twee lijstvakken
Private Sub Worksheet_Activate()
'UpdatebyExtendoffice20171117
Dim xCell As Range
Dim xRg As Range
Set xRg = Sheets("Admin_Lists").Range("ItemList")
Me.ListBox1.Clear
Me.ListBox2.Clear
With Me.ListBox1
.LinkedCell = ""
.ListFillRange = ""
For Each xCell In xRg
If xCell <> "" Then
.AddItem xCell.Value
End If
Next xCell
End With
Me.ListBox1.MultiSelect = fmMultiSelectMulti
Me.ListBox2.MultiSelect = fmMultiSelectMulti
End Sub
Private Sub BTN_MoveSelectedLeft_Click()
Call moveSigle(Me.ListBox2, Me.ListBox1)
End Sub
Private Sub BTN_MoveSelectedRight_Click()
Call moveSigle(Me.ListBox1, Me.ListBox2)
End Sub
Private Sub BTN_moveAllLeft_Click()
Call moveAll(Me.ListBox2, Me.ListBox1)
End Sub
Private Sub BTN_moveAllRight_Click()
Call moveAll(Me.ListBox1, Me.ListBox2)
End Sub
Sub moveAll(xListBox1 As Object, xListBox2 As Object)
Dim I As Long
For I = 0 To xListBox1.ListCount - 1
xListBox2.AddItem xListBox1.List(I)
Next I
xListBox1.Clear
End Sub
Sub moveSigle(xListBox1 As Object, xListBox2 As Object)
Dim I As Long
For I = 0 To xListBox1.ListCount - 1
If I = xListBox1.ListCount Then Exit Sub
If xListBox1.Selected(I) = True Then
xListBox2.AddItem xListBox1.List(I)
xListBox1.RemoveItem I
I = I - 1
End If
Next
End Sub
9. Ga vervolgens naar een ander werkblad en ga terug naar het werkblad met de lijstvakken, nu kunt u zien dat de lijstgegevens zijn weergegeven in het eerste lijstvak. Klik op de opdrachtknoppen om de items tussen de twee lijstvakken te verplaatsen.
Selectie verplaatsen
![]() | ![]() | ![]() |
Alles verplaatsen
![]() | ![]() | ![]() |
Beste Office-productiviteitstools
Versterk je Excel-vaardigheden met Kutools voor Excel en ervaar ongeëvenaarde efficiëntie. Kutools voor Excel biedt meer dan300 geavanceerde functies om je productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die je het meest nodig hebt...
Office Tab brengt een tabbladinterface naar Office en maakt je werk veel eenvoudiger
- Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in
- Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster, in plaats van in nieuwe vensters.
- Verhoog je productiviteit met50% en bespaar dagelijks honderden muisklikken!