Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Wert aus Listbox in Textbox anzeigen lassen

Wert aus Listbox in Textbox anzeigen lassen
24.10.2004 23:45:44
Ric
Moin
Habe eine dreispaltige Listbox erzeugt, in der auch Werte angezeigt werden.
Wenn ich einen Eintrag anklicke soll der Wert aus der ersten Spalte der Listbox
in der Textbox ausgegeben werden.
Wie muß ich vorgehen?
Besten Dank im voraus!
Ric
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wert aus Listbox in Textbox anzeigen lassen
24.10.2004 23:53:45
Josef
Hallo Ric!
Das geht so.

Private Sub ListBox1_Click()
TextBox1 = ListBox1.List(ListBox1.ListIndex, 0)
End Sub

Gruß Sepp
AW: Wert aus Listbox in Textbox anzeigen lassen
Ric
Moin
Klasse. Danke!
Ric
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Wert aus Listbox in Textbox anzeigen lassen


Schritt-für-Schritt-Anleitung

  1. Erstelle die Listbox und Textbox: Füge eine Listbox und eine Textbox in dein Excel-Userform ein. Du kannst dies im VBA-Editor tun, indem du die Steuerelemente aus der Toolbox hinzufügst.

  2. Füge Werte zur Listbox hinzu: Du kannst die Listbox mit Werten in drei Spalten füllen. Dies kann im Code erfolgen, zum Beispiel im UserForm_Initialize-Ereignis:

    Private Sub UserForm_Initialize()
        ListBox1.AddItem "Wert1"
        ListBox1.List(ListBox1.ListCount - 1, 1) = "Zusatz1"
        ListBox1.List(ListBox1.ListCount - 1, 2) = "Info1"
        ListBox1.AddItem "Wert2"
        ListBox1.List(ListBox1.ListCount - 1, 1) = "Zusatz2"
        ListBox1.List(ListBox1.ListCount - 1, 2) = "Info2"
    End Sub
  3. Code für das Klicken auf die Listbox: Um den Wert aus der Listbox in die Textbox zu übertragen, füge den folgenden Code in das Click-Ereignis der Listbox ein:

    Private Sub ListBox1_Click()
        TextBox1.Value = ListBox1.List(ListBox1.ListIndex, 0)
    End Sub
  4. Testen: Starte das Userform und klicke auf einen Eintrag in der Listbox. Der Wert der ersten Spalte sollte nun in der Textbox angezeigt werden.


Häufige Fehler und Lösungen

  • Fehler: Textbox bleibt leer
    Lösung: Stelle sicher, dass die Listbox tatsächlich Werte enthält und dass du die richtige Spalte im Code angibst. Überprüfe auch, ob das Click-Ereignis der Listbox korrekt zugeordnet ist.

  • Fehler: VBA-Code funktioniert nicht
    Lösung: Überprüfe, ob der VBA-Code im richtigen Modul platziert ist (Userform-Modul) und dass keine anderen Fehler im Code vorhanden sind.


Alternative Methoden

Eine alternative Methode, um Werte von einer Listbox zu einer Textbox zu übertragen, wäre die Verwendung von Change-Ereignissen. Du kannst den Code so anpassen:

Private Sub ListBox1_Change()
    TextBox1.Value = ListBox1.List(ListBox1.ListIndex, 0)
End Sub

Diese Methode funktioniert ähnlich, wird jedoch aufgerufen, wenn sich die Auswahl in der Listbox ändert.


Praktische Beispiele

Stelle dir vor, du hast eine Listbox mit Produktnamen in der ersten Spalte, Preis in der zweiten und Beschreibung in der dritten. Wenn ein Benutzer einen Produktnamen auswählt, wird der Name in einer Textbox angezeigt. Hier ein Beispiel des Codes:

Private Sub ListBox1_Click()
    TextBox1.Value = ListBox1.List(ListBox1.ListIndex, 0) ' Produktname
End Sub

Du kannst diese Technik in verschiedenen Anwendungen verwenden, z.B. für Bestellformulare oder zur Anzeige von Optionen in einem Dashboard.


Tipps für Profis

  • Verwende die ListCount-Eigenschaft: Mit ListCount kannst du sicherstellen, dass die Listbox nicht leer ist, bevor du auf einen Index zugreifst.

  • Dynamische Daten: Ziehe in Betracht, die Listbox dynamisch mit Daten aus einer Excel-Tabelle zu füllen, um die Benutzererfahrung zu verbessern.

  • Styling der Listbox: Nutze die Eigenschaften der Listbox, um sie ansprechender zu gestalten. Ändere die Schriftgröße oder die Hintergrundfarbe, um sie an das Design deines Userforms anzupassen.


FAQ: Häufige Fragen

1. Wie kann ich mehrere Werte aus der Listbox in die Textbox übertragen?
Um mehrere Werte anzuzeigen, kannst du sie kombinieren und in die Textbox schreiben, z.B.:

TextBox1.Value = ListBox1.List(ListBox1.ListIndex, 0) & " - " & ListBox1.List(ListBox1.ListIndex, 1)

2. Funktioniert dieser Code in Excel 2016?
Ja, der Code ist mit Excel 2010 und neuer kompatibel, einschließlich Excel 2016. Stelle sicher, dass du die richtigen Referenzen gesetzt hast.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige