10.08.2017, 09:09
Guten Morgen excelianer,
und wieder mal ein schwieriges Unterfangen so früh am Morgen.
Ich habe in Tabelle1 eine UF in der sich eine ListBox1 befindet. Diese soll ihre Daten aus Worksheets("usernamen") bekommen. Jedoch füllt sie sich nur aus Tabelle1
Das ist die Listbox und das der Start, hoffe das reicht um mir zu helfen.
Schon mal großen dank!!!!
und wieder mal ein schwieriges Unterfangen so früh am Morgen.
Ich habe in Tabelle1 eine UF in der sich eine ListBox1 befindet. Diese soll ihre Daten aus Worksheets("usernamen") bekommen. Jedoch füllt sie sich nur aus Tabelle1
Code:
Private Sub ListBox1_Click()
Dim lZeile As Long
'Wenn der Benutzer einen Namen anklickt, suche ich
'diesen in der Tabelle2 heraus und tragen die Daten
'in die TextBoxen ein.
'ich lösche standardmäßig alle bisherigen TextBoxen-Inhalte
txt_nachname = ""
txt_vorname = ""
txt_passwort = ""
'Nur wenn ein Eintrag selektiert/markiert ist
If ListBox1.ListIndex >= 0 Then
lZeile = 2 'Start in Zeile 2, Zeile 1 sind die Überschriften
'Schleife solange etwas in der zweiten Spalte in Tabelle 1 drin steht
Do While Trim(CStr(Worksheets("usernamen").Cells(lZeile, 1).Value)) <> ""
'Wenn ich den Namen aus der ListBox1 in der Tabelle2 Spalte 2
'gefunden habe, übertragen ich die anderen Spalteninhalte
'in die TextBoxen!
If ListBox1.Text = Trim(CStr(Worksheets("usernamen").Cells(lZeile, 1).Value)) Then
'TextBoxen füllen
txt_nachname = ListBox1.List(ListBox1.ListIndex, 0)
txt_vorname = ListBox1.List(ListBox1.ListIndex, 1)
txt_passwort = Worksheets("usernamen").Cells(lZeile, 3).Value
Exit Do
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End If
End Sub
Code:
Private Sub UserForm_Initialize()
Dim lZeile As Long
'Alle TextBoxen leer machen
txt_nachname = ""
txt_vorname = ""
txt_passwort = ""
'In dieser Routine laden ich alle vorhandenen
'Einträge in die ListBox1
ListBox1.Clear 'Zuerst einmal die Liste leeren
lZeile = 2 'Start in Zeile 2, Zeile 1 sind die Überschriften
'Schleife solange etwas in der zweiten Spalte in Tabelle 2 drin steht
Do While Trim(CStr(Worksheets("usernamen").Cells(lZeile, 1).Value)) <> ""
'Aktuelle Zeile in die ListBox eintragen
ListBox1.AddItem
ListBox1.List(ListBox1.ListCount - 1, 0) = Cells(lZeile, 1).Text
ListBox1.List(ListBox1.ListCount - 1, 1) = Cells(lZeile, 2).Text
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub
Schon mal großen dank!!!!