Direkt zum Inhalt

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.

doc Elemente zwischen Listenfeld 1 verschieben doc Pfeil rechts doc Elemente zwischen Listenfeld 2 verschieben

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.
doc Elemente zwischen Listenfeld 3 verschieben

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:
doc Elemente zwischen Listenfeld 4 verschieben

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:

doc Elemente zwischen Listenfeld 5 verschieben doc Pfeil rechts doc Elemente zwischen Listenfeld 6 verschieben

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:

doc Elemente zwischen Listenfeld 7 verschieben doc Pfeil rechts doc Elemente zwischen Listenfeld 8 verschieben

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:
doc Elemente zwischen Listenfeld 9 verschieben

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

doc Elemente zwischen Listenfeld 10 verschieben doc Elemente zwischen Listenfeld 11 verschieben doc Elemente zwischen Listenfeld 12 verschieben

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:
doc Elemente zwischen Listenfeld 13 verschieben

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

 doc Elemente zwischen Listenfeld 14 verschieben

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.
doc Elemente zwischen Listenfeld 15 verschieben

Auswahl verschieben

doc Elemente zwischen Listenfeld 16 verschieben doc Pfeil rechts doc Elemente zwischen Listenfeld 17 verschieben

Bewegen Sie alle

doc Elemente zwischen Listenfeld 18 verschieben doc Pfeil rechts doc Elemente zwischen Listenfeld 19 verschieben

Beste Office-Produktivitätstools

🤖 Kutools KI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Erstellen Sie benutzerdefinierte Formeln  |  Analysieren Sie Daten und erstellen Sie Diagramme  |  Rufen Sie Kutools-Funktionen auf...
Beliebte Funktionen: Suchen, markieren oder identifizieren Sie Duplikate   |  Leere Zeilen löschen   |  Kombinieren Sie Spalten oder Zellen, ohne Daten zu verlieren   |   Runde ohne Formel ...
Super-Lookup: VLookup mit mehreren Kriterien    VLookup mit mehreren Werten  |   VLookup über mehrere Blätter hinweg   |   Unscharfe Suche ....
Erweiterte Dropdown-Liste: Erstellen Sie schnell eine Dropdown-Liste   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Fügen Sie eine bestimmte Anzahl von Spalten hinzu  |  Spalten verschieben  |  Schalten Sie den Sichtbarkeitsstatus ausgeblendeter Spalten um  |  Vergleichen Sie Bereiche und Spalten ...
Ausgewählte Funktionen: Rasterfokus   |  Designansicht   |   Große Formelleiste    Arbeitsmappen- und Blattmanager   |  Ressourcen (Autotext)   |  Datumsauswahl   |  Arbeitsblätter kombinieren   |  Zellen verschlüsseln/entschlüsseln    Senden Sie E-Mails nach Liste   |  Superfilter   |   Spezialfilter (Filter fett/kursiv/durchgestrichen...) ...
Top 15 Toolsets12 Text Tools (Text hinzufügen, Zeichen entfernen, ...)   |   50+ Chart Typen (Gantt-Diagramm, ...)   |   40+ Praktisch Formeln (Berechnen Sie das Alter basierend auf dem Geburtstag, ...)   |   19 Einfügen Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Umwandlung (Conversion) Tools (Zahlen zu Wörtern, Currency Conversion, ...)   |   7 Zusammenführen & Teilen Tools (Erweiterte Zeilen kombinieren, Zellen teilen, ...)   |   ... und mehr

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 ...

Beschreibung


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!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
My excel becomes unresponsive after running this code. what could be the problem?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations