Listbox mit bestimmte Werte füllen
#1
Hallo Community,

ich arbeite gerade an einer Userform und komme nicht weiter.
Ich würde gerne eine Listbox mit Daten aus einer ActiveSheet füllen.
Und zwar befindet sich in der Form eine Textbox5 mit einer Kundennummer.

In der Activesheet soll in der Spalte B nach dieser Kundennummer (Textbox5.value) gesucht werden und den Wert aus Spalte E (aus der selben row) in die Listbox eingetragen werden. 
Es können mehrere Zeilen vorhanden sein.

Ich weiß irgendwie nicht wie ich das anstellen soll :(

Vielen Dank im Voraus und viele Grüße
Steve
Antworten Top
#2
Hallo

im Internet findest du dazu dutzende fertige Beispiel wie man eine Listbox befüllt.
Du musst sie nur ein bisschen umschreiben auf deine Tabelle und deine Spalten.

mfg Gast 123

Schau auch mal hier und bei anderen Foren im Archiv zum Thema "ListBox über Textbox füllen" nach. Da könnte es fertige Makros geben.
Antworten Top
#3
Hallo Gast 123,

besten Dank. Ich habe auch vieles dazu gefunden. Allerdings nicht den Code der mir nach einem Suchwort (Textbox5.value) sucht.
Antworten Top
#4
Hi,

zeig mal Deine (Beispiel-)datei. Möglicherweise sind die Werte in der Suchmatrix Zahlen und kein Text.
Antworten Top
#5
Hallo Steve,

braucht es unbedingt ActiveSheet. Dient das Ding nur zum Filtern, oder möchtest Du in der Listbox Zeilen anklicken und in Texboxen ausgeben. Sollen dann Daten darin bearbeitet, gespeichert oder gelöscht werden?
Ich frage deshalb, weil via ActiveSheet u. U. auch unterschiedliche Anzahl von benötigten Spalten in Frage kämen.

Gruß Uwe
Antworten Top
#6
Guten Morgen Egon,

in der Activesheet befinden sich Bauteile. Alle Bauteile haben eine eigene Bauteil-Nr. und eine dazugehörige Projekt-Nr.
Die Projekt-Nr. befindet sich in der Userform (Textbox5) und soll in der Spalte B der aktiven Tabelle gesucht und aus den jeweils gefundenen rows die Bauteil-Nr. (Spalte E) in die Listbox gefüllt werden.

Es benötigt nicht unbedingt activesheet. Ich befinde mich beim öffnen der Userform halt dann eben in der Sheet "Bauteile".

VG Steve
Antworten Top
#7
Moin!
Warum filterst Du die Tabelle Bauteile nicht einfach nach Projektnummer?

Fragt sich Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#8
Hallo Ralf, 

weil sich das alles in der Userform "abspielen" soll. Zeitgleich arbeiten auch weitere Personen mit der Tabelle. Ein Filtern wäre dann wohl nicht die richtige Wahl. (glaube ich)

In meinem Laien Kopf habe ich auch den Code...aber ich bekomme ihn nicht auf Papier.

Suche reihe für reihe in Spalte B nach Textbox5.value bei Treffer merke ReiheNr. und füge Inhalt aus der gefundenen Reihe, Spalte E in die Combobox
next


Code:
With Worksheets("Bauteile")
ReiheNr = 2
With ComboBox1
Do While IsEmpty(Cells(ReiheNr, 1)) = False
.AddItem Cells(ReiheNr, 5)
ReiheNr = ReiheNr + 1

Ich bekomme es aber nicht hin wo ich die Suche da noch mit einbinden kann.
Antworten Top
#9
Warum nur habe ich exakt diese Antwort erwartet?
Warum traut man den Benutzern nicht eine der simpelsten Funktionalitäten in Excel zu?
Warum nimmt man statt dessen ein Userform?
Schließlich hat man überall dort erst mal ausschließlich Text, der konvertiert werden muss?

Warum nutzt Du nicht einfach die in Deiner Version vorhandene Funktion FILTER()?
Dies in einem aufgehübschten Formular-Tabellenblatt!

ABCDE
1BauteilProjekt
215Projekt6
326Bauteile2
4363
5464
6556
7668
875
986
1095
11

ZelleFormel
E3=FILTER(A:A;B:B=E2)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#10
Hallo,


Zitat:Zeitgleich arbeiten auch weitere Personen mit der Tabelle. 


Excel ist für einen Mehrbenutzereinsatz nur sehr bedingt geeignet, eher gar nicht.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste