Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1748to1752
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Listbox mit Combobox einlesen

Listbox mit Combobox einlesen
31.03.2020 20:17:33
Guesa
Hallo Forum
in eine Combobox lasse ich mir Tabellenblätter einlesen in eine Listbox halt die Einträge aus den Tabellenblättern. Das klappt auch jeweils für die CB und die LB. Jetzt möchte ich gerne das die Listbox das Tabellenblatt einliest das in der Combobox ausgewählt wird. Sitze da schon eine Weile dran und meine letzte Hoffnung ist mal wieder dieses Forum. Super wäre auch wenn ich dann mit doppelklick in der Listbox die Einträge (ganze Zeile) in der jeweiligen Tabelle löschen kann. Wenn ich jetzt die Userform öffnen will bricht das Makro ab und springt in die Sub mit der ich die Userform öffnen möchte. Noch zu erwähnen wäre das alle Tabellenblätter (bis auf das Übersicht Tabellenblatt) ausgeblendet sind. Hoffe auf Eure Hilfe
Hier das was ich bis jetzt habe. Gruß Guesa
Private Sub UserForm_Activate()
Dim WS As Worksheet
Dim lRow As Long
Dim lastRow As Long
For Each WS In ThisWorkbook.Worksheets
If Not (WS.name = "A-Muster" Or WS.name = "Start" Or WS.name = "Differenz") Then
ComboBox1.AddItem WS.name
End If
Next WS
ListBox1.Clear
With ListBox1
.ColumnCount = 3
.ColumnWidths = "2cm; 2cm; 5cm;"
End With
ListBox1.Clear
lastRow = Sheets(WS).Range("B" & Sheets(WS).Rows.Count).End(xlUp).Row
'    lastRow = Sheets("Test").Range("B" & Sheets("Test").Rows.Count).End(xlUp).Row
For lRow = 1 To lastRow
If WS.Cells(lRow, 3)  "" Then
ListBox1.AddItem (WS.Cells(lRow, 3))
ListBox1.List(ListBox1.ListCount - 1, 0) = WS.Cells(lRow, 17)
ListBox1.List(ListBox1.ListCount - 1, 1) = Format(WS.Cells(lRow, 18), "#,##0.00 €")
ListBox1.List(ListBox1.ListCount - 1, 2) = WS.Cells(lRow, 19)
End If
Next lRow
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox mit Combobox einlesen
01.04.2020 10:47:03
ChrisL
Hi
Private Sub ComboBox1_Change()
Dim lastRow As Long, lRow As Long
If ComboBox1.ListIndex  "" Then
ListBox1.AddItem .Cells(lRow, 3)
ListBox1.List(ListBox1.ListCount - 1, 0) = .Cells(lRow, 17)
ListBox1.List(ListBox1.ListCount - 1, 1) = Format(.Cells(lRow, 18), "#,##0.00 €")
ListBox1.List(ListBox1.ListCount - 1, 2) = .Cells(lRow, 19)
End If
Next lRow
End With
End Sub

Private Sub UserForm_Initialize()
Dim WS As Worksheet
For Each WS In ThisWorkbook.Worksheets
If Not (WS.Name = "A-Muster" Or WS.Name = "Start" Or WS.Name = "Differenz") Then _
ComboBox1.AddItem WS.Name
Next WS
End Sub
ComboBox MatchRequired=True setzen.
cu
Chris
Anzeige
AW: Listbox mit Combobox einlesen
01.04.2020 12:52:15
Guesa
Hallo Chris
gerade ausprobiert und funktioniert, Danke für Deine Hilfe
jetzt stoße ich allerdings auf ein anderes Problem, wenn du da auch noch eine Lösung für hättest wäre das Super. Da ich in Spalte A im Tabellenblatt Datum stehen habe und ich mir nur das Datum von Januar einlesen möchte bin ich gerade dabei mir das im Tabellenblatt lückenlos aufzulisten. Da ich das für alle Monate machen muss ist dies sehr Umständlich und die Datei wird dadurch auch wohl fetter.
Gibt es die Möglichkeit das ich mir direkt aus der Spalte A nur bestimmte Monate einlesen kann. Dann brauch ich mir nur noch von Januar-Dezember die Userformen entsprechend einzurichten.
Gruß, Guesa
Anzeige
AW: Listbox mit Combobox einlesen
01.04.2020 13:32:16
ChrisL
Hi
Schön dass Teil 1 funktioniert.
Leider verstehe ich nur Bahnhof, was Teil 2 betrifft. Vielleicht machst du besser einen neuen Beitrag und stellst eine Beispieldatei zur Verfügung.
cu
Chris
AW: Listbox mit Combobox einlesen
01.04.2020 14:14:28
Guesa
Hallo
kein Problem habe eventuell eine andere Idee dazu
Gruß, Guesa

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige