Note: The other languages of the website are Google-translated. Back to English

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 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 Immobilien, und in der Immobilien 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

Die besten Tools für die Office-Produktivität

Kutools for Excel löst die meisten Ihrer Probleme und erhöht Ihre Produktivität um 80%

  • Wiederverwendung: Schnell einfügen komplexe Formeln, Diagramme und alles, was du vorher benutzt hast; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
  • Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
  • Zellen / Zeilen / Spalten zusammenführen ohne Daten zu verlieren; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen / Spalten... doppelte Zellen verhindern; Bereiche vergleichen...
  • Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
  • Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
  • Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
  • Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
  • Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
  • Mehr als 300 leistungsstarke Funktionen. Unterstützt Office / Excel 2007-2021 und 365. Unterstützt alle Sprachen. Einfache Bereitstellung in Ihrem Unternehmen oder Ihrer Organisation. 30-tägige kostenlose Testversion mit allen Funktionen. 60 Tage Geld-zurück-Garantie.
kte tab 201905

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!
officetab unten
Kommentare (1)
Noch keine Bewertungen. Bewerten Sie als Erster!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Mein Excel reagiert nicht mehr, nachdem ich diesen Code ausgeführt habe. Was könnte das Problem sein?
Es sind noch keine Kommentare vorhanden
Hinterlassen Sie Ihre Kommentare
Als Gast posten
×
Bewerte diese Nachricht:
0   Figuren
Vorgeschlagene Standorte

Folgen Sie uns

Copyright © 2009 - www.extendoffice.com. | Alle Rechte vorbehalten. Unterstützt von ExtendOffice. | Sitemap
Microsoft und das Office-Logo sind Marken oder eingetragene Marken der Microsoft Corporation in den USA und / oder anderen Ländern.
Geschützt durch Sectigo SSL