415 Aufrufe
Gefragt in Tabellenkalkulation von peter-pfeiffer Einsteiger_in (28 Punkte)
Gute Tag zusammen,

ich habe ein Formular, das unter anderem 2 Listboxen hat, "PLG" und "Firma", welchen Ihren Inhalt aus zwei Tabellenblättern (PLG und Firma) auslesen.

Der Code hierzu ist:

*************************************

With ThisWorkbook.Sheets("PLG")
PLG.RowSource = Range(.Cells(2, 1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1)).Address(External:=True)
PLG.Value = .Cells(2, 1)
End With

With ThisWorkbook.Sheets("Firma")
Unternehmen.RowSource = Range(.Cells(2, 1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1)).Address(External:=True)
Unternehmen.Value = .Cells(2, 1)
End With
*************************************

Ich möchte nun folgendes erreichen:

Wird im Formular in der Listbox "PLG" ein Wert ausgewählt, dann sollen in der Listbox "Firma" nur noch Firmen angezeigt werden, welche in dem Tabbelblatt "Firma" in Spalte F den gleichen Wert haben. Ich möchte als die angezeigten Werte entsprechend vorfiltern um die Anzahl der Einträge zu verringern.

Ich habe dazu leider nichts pssenes gefunden, daher die Frage und Bitte in die Runde.

Vielen Dank für eine kurze Rückmeldung.

Liebe Grüße

Peter Pfeiffer

3 Antworten

0 Punkte
Beantwortet von beverly_ Experte (3.3k Punkte)
Hi Peter,

dazu darfst du der ListBox Unternehmen die Daten nicht über RowSource zuweisen sondern musst den Zellbereich in einer Schleife durchlaufen und prüfen, ob in Spalte F der gesuchte Wert vorhanden ist und wenn ja, dann mittels AddItem diese Zeile(n) der ListBox zuweisen.

Bis später, Karin
0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)

Hallo Peter,

hier mal eine kleine Beispieldatei: Download

Gruß

M.O.

0 Punkte
Beantwortet von
Guten Tag,

perfekt.

Vielen Vielen Dank und eine stressfrei Restwoche.

LG

Peter Pfeiffer
...