Inhaltsverzeichnis
Wenn wir mit einem großen Datensatz arbeiten, ist es oft schwierig, einen selektiven Wert daraus zu gewinnen. Außerdem kann man nicht mehr als mehrere Informationen gleichzeitig auswählen. In diesem Fall, ListBox ist eine sehr hilfreiche Lösung in Excel Aber der Prozess der Erstellung dieser ListBox Deshalb lernen wir in diesem Artikel, wie man eine Mehrfachauswahl erstellt. ListBox in Excel mit einigen einfachen Schritten.
Download Arbeitsbuch Praxis
Holen Sie sich die Beispieldatei zum Üben.
Multi Select ListBox.xlsmSchritt-für-Schritt-Anleitungen zum Erstellen von Multi Select ListBox in Excel
Um den Prozess zu erleichtern, haben wir ihn unterteilt in 8 Lassen Sie uns also ohne weitere Verzögerung zu den folgenden Schritten übergehen, um zu sehen, wie wir eine Mehrfachauswahl erstellen können ListBox in Excel.
Schritt 1: Excel-Tabelle aus Datensatz erstellen
Zunächst müssen wir einen Beispieldatensatz vorbereiten und in eine Tabelle umwandeln. Gehen Sie dazu wie folgt vor.
- Erstellen Sie zunächst einen Datensatz mit den Informationen von 10 Namen von Städten und ihre Gesamtbevölkerung der USA bis 1, Juli im Zellenbereich B5:C14 .
- Klicken Sie nun auf eine beliebige Zelle des Datensatzes und wählen Sie Tabelle von der einfügen. tab.
- Dann sehen Sie die Tabelle erstellen das automatisch den Zellbereich für die Erstellung einer Tabelle auswählt.
- In diesem Fenster markieren Sie das Feld Meine Tabelle hat Überschriften Box und drücken Sie OK .
- Das Ergebnis ist, dass der Datensatz in eine Tabelle umgewandelt wird.
- Außerdem finden Sie die Tabelle in der Tabelle Name Feld unter dem Tabelle Design Registerkarte
- Sie können den Tabellennamen nach Ihren Wünschen ändern.
Lesen Sie mehr: Erstellen einer abhängigen Dropdown-Liste in Excel
Schritt 2: Benennen der Datensatzliste im Namensmanager
Jetzt benennen wir jede Kategorie von Zellbereichen in der Tabelle. Gehen Sie dazu die folgenden Schritte durch.
- Wählen Sie zunächst eine beliebige Zelle aus Säule B in der Tabelle.
- Gehen Sie dann zum Formeln und wählen Sie Name definieren .
- Danach sehen Sie die Neuer Name Dialogfeld.
- Geben Sie in diesem Dialogfeld einen beliebigen Namen entsprechend der ausgewählten Spaltenüberschrift im Feld Name Box.
- Klicken Sie dann auf die Schaltfläche Bezieht sich auf in demselben Fenster.
- Bewegen Sie dann den Cursor über die Kopfzeile, und es wird ein schwarzer Pfeil angezeigt.
- Drücken Sie anschließend die linke Maustaste, um die Zellenbereich B5:B14 .
- Als Ergebnis sehen Sie die Liste der Namen zusammen mit dem Tabellennamen im Feld Bezieht sich auf Box und drücken Sie OK .
- Gehen Sie genauso vor, für die Zellenbereich C5:C14 auch.
- Schließlich sehen Sie die Namen im Feld Name Box in der oberen linken Ecke der Arbeitsmappe.
Schritt 3: Dropdown-Liste mit Datenüberprüfung erstellen
In diesem Stadium werden wir eine Dropdown-Liste aus den benannten Bereichen mit Datenvalidierung erstellen. Dies ist der wesentliche Teil der Erstellung einer ListBox Wir werden dies in einem anderen Arbeitsblatt in der Arbeitsmappe erstellen. Sie können dies aber auch im selben Arbeitsblatt tun. Schauen wir uns den Prozess unten an.
- Wählen Sie zunächst einige Zellen in der Tabelle aus, auf die Sie Folgendes anwenden möchten Validierung von Daten .
- Gehen Sie dann zum Daten und wählen Sie Validierung von Daten im Daten-Tools Abschnitt.
- Als nächstes wird in der Einstellungen Registerkarte, wählen Sie Liste im Erlauben Sie Box.
- Außerdem hat Mark die Leerzeichen ignorieren und Dropdown in der Zelle Boxen.
- Klicken Sie anschließend auf die Schaltfläche Quelle Feld in diesem Fenster und drücken Sie F3 auf Ihrer Tastatur.
- Infolgedessen werden Sie die Name einfügen Dialogfeld mit der Namensliste.
- Wählen Sie hier StadtNamen aus der Liste und drücken Sie OK .
- Dann wird der Name der ersten Liste im Quellenfeld angezeigt.
- Drücken Sie abschließend OK und wenden Sie das gleiche Verfahren für die zweite Namensliste an.
- Schließlich werden Sie feststellen, dass Validierung von Daten wird für die ausgewählten Zellen aktiviert.
Schritt 4: VBA-Code in das validierte Arbeitsblatt einfügen
Jetzt kommt der entscheidende Teil des Einfügens VBA Code zur Erstellung einer ListBox Nachfolgend wird das Verfahren hierfür beschrieben.
- Klicken Sie zunächst mit der rechten Maustaste auf das validierte Arbeitsblatt und wählen Sie Code anzeigen von der Kontextmenü .
- Fügen Sie dann diesen Code in die Seite ein.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim rngDV As Range Dim oldVal As String Dim newVal As String Dim strList As String On Error Resume Next Application.EnableEvents = False Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation) On Error GoTo exitHandler If rngDV Is Nothing Then GoTo exitHandler If Not Intersect(Target, rngDV) Is Nothing Then If Target.Validation.Type = 3Then strList = Target.Validation.Formula1 strList = Right(strList, Len(strList) - 1) strDVList = strList frmDVList.Show End If End If exitHandler: Application.EnableEvents = True End Sub
- Gehen Sie dann zum einfügen. und wählen Sie Modul .
- Zu diesem Zeitpunkt muss der Name der Arbeitsmappe im Feld Objekt des Projekts Fenster.
- Dann benennen Sie das Modul um in modSettings und fügen Sie diesen Code ein.
Option Explicit Global strDVList As String
Dank an Kontexte für die Bereitstellung der Codes.
Schritt 5: UserForm mit Listbox & Buttons erstellen
In diesem Stadium erstellen wir eine UserForm für die Arbeitsmappe zusammen mit einem ListBox und einige Befehlsschaltflächen Gehen Sie dazu wie folgt vor.
- Wählen Sie zunächst die Arbeitsmappe im Fenster Projekt-VBAProjekt Fenster im Visual Basic Herausgeber.
- Gehen Sie dann zum einfügen. und wählen Sie UserForm .
- Infolgedessen erhalten Sie die UserForm Schnittstelle wie diese.
- Darüber hinaus erhalten Sie auch die Werkzeugkasten Fenster.
- Ziehen Sie von hier aus ListBox zum UserForm .
- Dann wird die ListBox Sie können die Größe anpassen, indem Sie an den Rändern des Kastens ziehen.
- Ziehen Sie dann die CommanButton zweimal nach UserForm um 2 Tasten für die Bedienung zu erstellen.
- Die endgültige Ausgabe sieht schließlich so aus.
Schritt 6: Ändern der Eigenschaftseinstellungen
In dieser Phase werden wir einige Änderungen an den Eigenschaften der einzelnen Komponenten der ListBox .
- Drücken Sie zu Beginn F4 über die Visual Basic Editor zum Öffnen des Fenster Eigenschaften .
- Wählen Sie dann die UserForm und ändern Sie die Name und Bildunterschrift so zu verstehen.
- Wählen Sie dann ListBox und ändern Sie die Name je nach Vorliebe.
- Ändern Sie außerdem den Typ der ListStyle , MultiSelect und SpecialEffect wie in der folgenden Abbildung dargestellt.
- Wählen Sie nun die erste Befehlsschaltfläche und nehmen Sie in den Eigenschaften die folgenden Änderungen vor.
- Bearbeiten Sie außerdem die Eigenschaften der zweiten Befehlsschaltfläche.
Schritt 7: VBA-Code auf UserForm anwenden
In diesem Stadium werden wir Folgendes anwenden VBA Codes zu den einzelnen Komponenten des UserForm Mal sehen, wie es funktioniert.
- Wählen Sie zunächst UserForm und gehen Sie zum Siehe Registerkarte zur Auswahl Code .
- Fügen Sie dann diesen Code in die leere Seite ein. Er wird automatisch ausgeführt, wenn die UserForm geöffnet ist.
Private Sub UserForm_Initialize() Me.lstDV.RowSource = strDVList End Sub
- Gehen Sie danach zurück zur UserForm Schnittstelle durch Anklicken von Objekt über die Siehe tab.
- Folgen Sie nun dem Verfahren zum Einfügen dieses Codes für die OK Taste.
Private Sub cmdOK_Click() Dim strSelItems As String Dim lCountList As Long Dim strSep As String Dim strAdd As String Dim bDup As Boolean On Error Resume Next strSep = ", " With Me.lstDV For lCountList = 0 To .ListCount - 1 If .Selected(lCountList) Then strAdd = .List(lCountList) Else strAdd = "" End If strSelItems = "" Then strSelItems = strAdd Else If strAdd "" Then strSelItems = strSelItems_ & strSep & strAdd End If End If Next lCountList End With With ActiveCell If .Value "" Then .Value = ActiveCell.Value _ & strSep & strSelItems Else .Value = strSelItems End If End With Unload Me End Sub
- Geben Sie außerdem den folgenden Code für die Schließen Sie nach demselben Verfahren.
Private Sub cmdClose_Click() Entlade mich End Sub
- Drücken Sie abschließend Strg + S um sie zu speichern und das Fenster zu schließen.
Dank an Kontexte für die Hilfe bei den Codes.
Schritt 8: Multi Select aus ListBox
Schließlich haben wir erfolgreich eine ListBox Um zu überprüfen, ob der Code funktioniert, führen Sie einfach die folgenden Schritte aus.
- Wählen Sie zunächst Zelle B5 wo wir die Validierung von Daten .
- Gleich danach wurde ein ListBox wird ein Pop-up-Fenster mit dem Befehl Element aus Liste auswählen .
- Wählen Sie in diesem Fenster mehr als einen Namen aus der Liste aus.
- Drücken Sie dann OK .
- Schließlich haben Sie erfolgreich eine Mehrfachauswahl aus dem ListBox und jeder Name ist durch ein Komma ( , ).
Dinge zum Merken
- Benannte Bereiche wird nicht zu einer Validierung von Daten Regel, wenn sie als Zellbezug oder mit Trennzeichen eingegeben werden.
- Die Globale Variable wird sowohl für UserForm und Arbeitsblatt VBA Jeder aktive Zellname übergibt zunächst den Code strDVList in einen temporären Bereich und wird dann als RowSource für die ListBox wenn ein Benutzer die UserForm .
- Um die Auswahl zu erleichtern, können Sie mehrere Bereiche in einem einzigen Namen zusammenfassen.
Schlussfolgerung
Das war's für heute. Ich hoffe, dass diese langen, aber einfachen Schritte, wie man Multi-select ListBox erstellen in Excel haben Ihnen das Thema ein wenig erleichtert. Teilen Sie uns Ihr Feedback im Kommentarfeld mit. ExcelWIKI für weitere Artikel wie diesen.