ich habe eine Listbox mit ca. 200 Einträgen. Beim Start dieser Listbox soll entsprechend dem Zellwert in Range "A1" der gültige Wert in der Listbox markiert und ins "Blichfeld der Listbox gescrollt" werden. Hat einer eine Lösung?
Vielen Dank
Stefan
With ListBox1
.Value = [a1]
.TopIndex = .ListIndex
End With
Gruß MatthiasUm einen Listbox-Eintrag auszuwählen und ihn beim Start der UserForm zu markieren, kannst du den folgenden VBA-Code verwenden. Dieser Code sollte in die UserForm_Initialize()
-Prozedur eingefügt werden.
Private Sub UserForm_Initialize()
With ListBox1
.Value = [A1] ' Hier wird der Wert aus Zelle A1 verwendet
.TopIndex = .ListIndex ' Scrollt zum markierten Eintrag
End With
End Sub
Dieser Code sorgt dafür, dass der Eintrag in der Listbox, der dem Wert in Zelle A1 entspricht, automatisch ausgewählt wird und die Listbox entsprechend scrollt.
Fehler 1: ListBox zeigt keinen Eintrag an
List
entsprechend gesetzt ist.Fehler 2: Kein Wert aus Zelle A1 wird ausgewählt
Eine alternative Methode, um den Eintrag auszuwählen, wäre die Verwendung von Find
. Hier ein Beispiel, wie du den Eintrag in der Listbox finden kannst:
Private Sub UserForm_Initialize()
Dim i As Long
For i = 0 To ListBox1.ListCount - 1
If ListBox1.List(i) = [A1] Then
ListBox1.ListIndex = i
ListBox1.TopIndex = i
Exit For
End If
Next i
End Sub
Diese Methode sucht nach dem Wert in A1 und markiert den entsprechenden Listeneintrag.
Angenommen, du hast eine UserForm mit einer ListBox, die folgende Einträge enthält: "Apfel", "Banane", "Kirsche". Wenn in Zelle A1 der Wert "Banane" steht, wird beim Öffnen der UserForm automatisch "Banane" ausgewählt.
Der Code sorgt für eine benutzerfreundliche Bedienung, da du den gewünschten Eintrag sofort sehen kannst, ohne manuell durch die Liste scrollen zu müssen.
ListCount
-Eigenschaft der ListBox, um dynamisch mit einer großen Anzahl von Einträgen umzugehen.1. Wie kann ich mehrere Einträge in der ListBox gleichzeitig auswählen?
Um mehrere Einträge auszuwählen, setze die MultiSelect
-Eigenschaft der ListBox auf fmMultiSelectMulti
. Dann kannst du die ausgewählten Einträge im Code durchlaufen.
2. Kann ich die ListBox auch mit Daten aus einer Tabelle füllen? Ja, du kannst die ListBox mit Daten aus einer Tabelle füllen, indem du eine Schleife verwendest, um die Werte aus dem gewünschten Bereich zu lesen und in die ListBox einzufügen.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen