VBA-Listenfeld - Wie erstelle ich ein Listenfeld in Excel VBA?

Inhaltsverzeichnis:

Anonim

Was ist ein Listenfeld in Excel VBA?

List Box ist eines der Tools unter Benutzerformular in VBA. Wie der Name selbst andeutet, enthält das Listenfeld alle vom Benutzer angegebenen Werte. Im VBA-Listenfeld befindet sich ein Benutzerformular. In diesem Artikel erfahren Sie, wie Sie ein Listenfeld erstellen und Werte im Listenfeld in Excel VBA speichern.

Listenfeld ist ein Feld, in dem Werte gespeichert werden können. Aus dieser Liste von Elementen kann der Benutzer das im Listenfeld angezeigte Element auswählen.

Wir können auch Listenfelder in regulären Excel-Tabellen zeichnen.

Wie erstelle ich ein Listenfeld in Excel?

Angenommen, Sie haben eine Liste des Monats in einem der Excel-Tabellen.

Für diese Liste von Monaten erstellen wir ein Listenfeld. Führen Sie die folgenden Schritte aus, um das Listenfeld im Excel-Arbeitsblatt zu erstellen:

Schritt 1: Gehen Sie zur Registerkarte Entwickler. Klicken Sie unter Entwickler auf die Registerkarte Zur Option Einfügen, und wählen Sie unter Einfügen die Option Zur Formularsteuerung, und wählen Sie unter Formularsteuerung die Option Listenfeld.

Schritt 2: Zeichnen Sie nach Auswahl des Listenfelds das Listenfeld in die Excel-Tabelle.

Schritt 3: Klicken Sie mit der rechten Maustaste auf das eingefügte Listenfeld und wählen Sie Formatkontrolle .

Schritt 4: Gehen Sie unter Formatkontrolle zu Kontrolle . Wählen Sie den Eingabebereich als Monatsnamenbereich und geben Sie den Zellbezug zu Zelle D1 an und klicken Sie dann auf OK .

Schritt 5: Wir haben eine Liste des Monats im Listenfeld.

Schritt 6: Wählen Sie eines der Elemente im Listenfeld aus und sehen Sie die Änderung in Zelle D1.

Wir haben also 3 als Ergebnis in Zelle D1 erhalten, da Mar das dritte Element in der Liste ist.

Wie erstelle ich ein Listenfeld in VBA?

Das Erstellen eines Listenfelds ist nicht so einfach, wie wir im obigen Beispiel gesehen haben. Sie benötigen umfangreiche Kenntnisse über Excel VBA-Makros.

Sie können diese Excel-Vorlage für VBA-Listenfelder hier herunterladen - Excel-Vorlage für VBA-Listenfelder

VBA List Box - Beispiel # 1

Grundlegendes zum VBA-Listenfeld.

Sie können das folgende Beispiel zum besseren Verständnis des VBA-Listenfelds heranziehen.

Führen Sie die folgenden Schritte aus, um ein Listenfeld in VBA zu erstellen.

Schritt 1: Fügen Sie im Visual Basic-Fenster ein Benutzerformular ein.

Schritt 2: Sobald Sie ein Benutzerformular einfügen, sehen Sie die Toolbox zusammen mit dem Benutzerformular.

Schritt 3: Wählen Sie in dieser Toolbox List Box .

Schritt 4: Zeichnen Sie dieses Listenfeld in das Benutzerformular.

Schritt 5: Geben Sie nach dem Einfügen des Listenfelds im Eigenschaftenfenster einen korrekten Namen für dieses Listenfeld ein.

Hinweis: Wenn Sie dieses Listenfeld nicht sehen, drücken Sie die Taste F4. Das Fenster mit den Eigenschaften wird wie oben angezeigt.

Schritt 6: Scrollen Sie nach unten und suchen Sie „Row Source“. Geben Sie hier den Wertebereich Ihres Monatsnamens zusammen mit dem Blattnamen ein.

Schritt 7: Sobald Sie die Referenz angegeben haben, werden die Monatsnamen im Listenfeld angezeigt.

Schritt 8: Wählen Sie nun im Eigenschaftenfenster des Listenfelds den Linienstil „ 1 - fmListStyleOption “ aus.

Schritt 9: Sobald Sie den Linienstil ausgewählt haben, können Sie die Auswirkungen sofort sehen.

Schritt 10: Führen Sie diesen Code aus. Ein Listenfeld wird separat angezeigt.

Schritt 11: Nun fügen wir Makrocode hinzu, um die vom Benutzer ausgewählten Daten zu speichern. Doppelklicken Sie auf das Listenfeld. Sie sehen einen separaten Makronamen wie den folgenden.

 Private Sub Month_List_Box_Click () End Sub 

Schritt 11: Wenn der Benutzer den Monat auswählt, werden die Daten in Zelle G5 gespeichert. Um die vom Benutzer eingegebenen Daten zu speichern, geben Sie den folgenden Code ein.

 Private Sub Month_List_Box_Click () Range ("G5"). Value = Month_List_Box.Value End Sub 

Schritt 12: Wenn Sie nun den Code ausführen und einen der Monate auswählen, wird der vom Benutzer ausgewählte Wert in der G5-Zelle angezeigt.

Ich habe Jun ausgewählt, damit ich Jun in der G5-Zelle sehen kann. So können wir Listenfelder in Ihren VBA-Projekten verwenden, um Eingaben von den Benutzern zu erhalten.

VBA List Box - Beispiel # 2

Add.Items-Methode zum Hinzufügen von Werten zum Listenfeld

Führen Sie die folgenden Schritte aus, um ein Listenfeld in VBA zu erstellen.

Schritt 1: Erstellen Sie ein neues Benutzerformular. Hier ist es UserForm2.

Schritt 2: Listenfeld in Benutzerformular 2 hinzufügen.

Schritt 3: Geben Sie diesem Listenfeld nach dem Einfügen des Listenfelds im Fenster Eigenschaften einen korrekten Namen, z . B. Month_list_Box1 .

Schritt 4: Wählen Sie nun im Eigenschaftenfenster des Listenfelds den Linienstil „ 1 - fmListStyleOption “ aus.

Schritt 5: Doppelklicken Sie auf das Benutzerformular. Sie sehen ein automatisch eingefügtes Makro wie das folgende.

 Private Sub UserForm_Click () End Sub 

Schritt 6: Durch Platzieren eines Cursors innerhalb des Makros wählen Sie " Initialisieren ".

Schritt 7: Sobald Sie "Initialisieren" gewählt haben, können wir sehen, dass ein neues Makro direkt unter dem aktuellen erstellt wird.

 Private Sub UserForm_Initialize () End Sub 

Schritt 8: Löschen Sie das alte Makro. Geben Sie unter UserForm initialize den folgenden Code ein, um Elemente zum Listenfeld hinzuzufügen.

 Private Sub UserForm_Initialize () Month_List_Box1.AddItem "Jan" Month_List_Box1.AddItem "Feb" Month_List_Box1.AddItem "Mar" Month_List_Box1.AddItem "Apr" Month_List_Box1.AddItem "Month_List_Box1.AddItem1 "Aug" Month_List_Box1.AddItem "Sep" Month_List_Box1.AddItem "oct" Month_List_Box1.AddItem "Nov" Month_List_Box1.AddItem "Dec" End Sub 

Schritt 10: Drücken Sie jetzt die Taste F5, um den Code auszuführen, und Sie erhalten die folgende Ausgabe.

Dinge, an die man sich erinnern sollte

  • Wenn Sie direkt einen Zellbezug angeben, müssen Sie den Blattnamen und den Zellbezug angeben. (Sie müssen ein Ausrufezeichen (!) Vor dem Blattnamen einfügen).
  • Sie können dem Listenfeld auch Elemente hinzufügen, indem Sie die Add.Item-Methode verwenden.
  • Wenn Sie dem Benutzer erlauben möchten, mehr als ein Element auszuwählen, müssen Sie die Option " fmMultiSelectMult" unter " Mehrfachauswahl" im Eigenschaftenfenster auswählen.

Empfohlene Artikel

Dies ist eine Anleitung zum VBA-Listenfeld. Hier erläutern wir, wie Sie ein Listenfeld in Excel und VBA erstellen, zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. Wie verwende ich VBA Replace?
  2. Listenfeld in Excel hinzufügen
  3. Leitfaden zu Excel VBA-Arrays
  4. Excel-Dropdown-Liste