Wie verschiebe ich Elemente schnell zwischen zwei Listenfeldern in Excel?
Haben Sie jemals versucht, die Elemente von einem Listenfeld in ein anderes zu verschieben, wie im folgenden Screenshot gezeigt? Hier werde ich über diesen Vorgang in Excel sprechen.
Verschieben Sie Elemente zwischen Listenfeldern
Verschieben Sie Elemente zwischen Listenfeldern
Es gibt keine eingebaute Funktion, die Ihnen helfen kann, den Job zu beenden, aber ich habe einen VBA-Code, der einen Gefallen tun kann.
1. Zunächst müssen Sie eine Liste mit Daten erstellen, die als Elemente in Listenfeldern in einem neuen Blatt angezeigt werden, das aufgerufen wird Admin_Listen.
2. Wählen Sie dann diese Daten aus und gehen Sie zu Name und Vorname Box, um ihnen einen Namen zu geben Artikelliste. Siehe Screenshot:
3. Klicken Sie dann in einem Blatt, das die beiden Listenfelder enthält, auf Entwickler:in / Unternehmen > Insert > Listenfeld (Active X Control)und zeichnen Sie zwei Listenfelder. Siehe Screenshot:
Besitzt das Entwickler:in / Unternehmen Registerkarte ist Ihr Band versteckt, Wie wird die Registerkarte "Entwickler" in der Multifunktionsleiste "Excel 2007/2010/2013" angezeigt / angezeigt? In diesem Artikel erfahren Sie, wie Sie es zeigen.
4. Dann klick Entwickler:in / Unternehmen > Insert > Befehlsschaltfläche (Active X Control)und zeichnen Sie vier Schaltflächen zwischen zwei Listenfeldern. Siehe Screenshot:
Benennen Sie nun die vier Befehlsschaltflächen mit neuen Namen um.
5. Wählen Sie die erste Befehlsschaltfläche aus und klicken Sie auf Ferienhäuser, und in der Ferienhäuser Fenster, geben Sie einen Namen BTN_MOVEAllRight dazu und tippe >> in das Textfeld daneben Bildunterschrift. Siehe Screenshot:
6. Wiederholen Sie Schritt 5, um die letzten drei Befehlsschaltflächen mit den folgenden Namen umzubenennen, und geben Sie den anderen Pfeil in die Beschriftungen ein. Siehe Screenshot:
BTN_MoveSelectedRight
BTN_moveAllLeft
BTN_MoveSelectedLeft
7. Klicken Sie mit der rechten Maustaste auf den Blattnamen, der die Listenfelder und Befehlsschaltflächen enthält, und wählen Sie Code anzeigen aus dem Kontextmenü. Siehe Screenshot:
8. Kopieren Sie den folgenden Makrocode und fügen Sie ihn in den ein Modul Skript dann speichern Sie den Code und schließen Sie die Microsoft Visual Basic für Applikationen Fenster. Siehe Screenshot
VBA: Elemente zwischen zwei Listenfeldern verschieben
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. Gehen Sie dann zu einem anderen Blatt und dann zurück zu dem Blatt, das die Listenfelder enthält. Jetzt können Sie sehen, dass die Listendaten im ersten Listenfeld aufgelistet wurden. Klicken Sie auf die Befehlsschaltflächen, um die Elemente zwischen zwei Listenfeldern zu verschieben.
Auswahl verschieben
Bewegen Sie alle
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!