Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1660to1664
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 zweite Spalte füllen

ListBox zweite Spalte füllen
14.12.2018 10:46:32
Antonio
Hallo Gemeinde,
ich komme mal wieder nicht weiter, seit 2 Tage Recherche, stehe ich immer noch am Anfang.
Ich habe eine Tabelle mit Überschrift und darunter die relative Einträge.
Ich habe eine UserForm mit TB CB und LB mit 2 Spalten
Die Überschrift werden in der erste Spalte übernommen.
Bis here alles klar.
Jetzt möchte ich das einträge in die TB und die Auswahl aus den CB in der zweite Spalte in LB eingetragen werden respektiv zu den Überschriften.
Z.B.: CB auswahl "Farbe"
LB Eintrag. zweitw Spalte, 8. Zeile, dort wo auch Farbe steht.
Ist sowas möglich?
Es soll unser Verkäufer helfen die Auswertung per E-Mail an uns zu senden.
Die xlsm File wird auf ihr Notebook geladen.
Hier die Bsp-Datei.
https://www.herber.de/bbs/user/126098.xlsm
Ich hoffe auf ein wenig Hilfe
Vielen Dank im Voraus
Antonio

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ListBox zweite Spalte füllen
14.12.2018 12:36:42
Antonio
.
AW: ListBox zweite Spalte füllen
16.12.2018 12:38:25
Oberschlumpf
Moin Antonio,
Ist sowas möglich?
Aber natürlich! :-)
Hier, probier mal:
https://www.herber.de/bbs/user/126153.xlsm
Deine Fehler:
Fehler 1
Du hast zwar in den Eigenschaften der Listbox festgelegt, dass diese 2 Spalten haben soll, aber mit dem Befehl
ListBox1.Column = Range("A1:Q1").Value
"wandelst" du alles wieder in eine 1spaltige Listbox um.
(warum das so ist, weiß ich nicht. Ich vermute einen Bug in der Programmierung von MS)
Korrigiert hab ich das, in dem ich in einer For/Next-Schleife die Inhalte aller Spalten aus Zeile 1 der Tabelle in die Listbox eingetragen habe. So bleibt die 2spaltige Listbox erhalten.
Fehler 2
In jedem Exit-Ereignis deiner txt- und cmb.Boxen hast du mit
ListBox1.AddItem TextBox1.Value
der Listbox eine weitere Zeile hinzugefügt und eben in Spalte 0 (erste Spalte in der Listbox) den Wert aus der jeweiligen txt. bzw cmb.Box übertragen.
Ok, das hast du vllt getan, weil du es noch nicht besser wusstest und ab dann hier gefragt hast.
Lösung:
Ich erkläre es am Bsp "Ansp.Partner"; gilt aber für alle Text- und Comboboxen.
Also...
In deinem Userform gibt es zu jeder Textbox ein Label und zu jeder Combobox ein Frame.
Label = Bezeichnung, was als Inhalt in der Textbox erwartet wird
Label3.Caption = "Ansp.Partner"
TextBox1.Value = Name des Anspr.Partners
Doof (für mich) ist, dass die Controlnamen Label3 + TextBox1 so gar nichts gemein haben.
Deshalb habe ich die Controls umbenannt. (ich habe alle Controls entsprechend umbenannt)
Label3 ist jetzt lblAP
TextBox1 ist jetzt txtAP
Label2 ist jetzt lblAdr
TextBox2 ist jetzt txtAdr

Die Gemeinsamkeit der Controls ist nun "AP" oder "Adr" usw.
Auch ich habe das Exit-Ereignis aller Controls zur weiteren Verarbeitung genutzt.
Am Beispiel von "Ansp.Partner" steht nun im Exit-Ereignis
Private Sub txtAP_Exit(ByVal Cancel As MSForms.ReturnBoolean)
With txtAP
sbVal2LB .Name, .Text
End With
End Sub

dieser Code bewirkt, dass nach Exit aus txtAP das Makro sbVal2LB aufgerufen wird.
txtAP.Name und txtAP.Text werden an das Makro übergeben, weil du ja txtAP.Text in der Listbox in der richtigen Zeile in Spalte 1 (zweite Spalte der Listbox) eintragen willst.
txtAP.Name wird benötigt, um mit Hilfe von lblAP den richtigen Eintrag in der Listbox zu finden.
Denn der Vorteil in deiner Datei ist:
Jeder Bezeichner (Label) "heißt" genau so, wie der jeweilige Eintrag in der Überschriftenzeile in der Tabelle, bzw wie nach Start des Userforms jeder Eintrag in der Listbox in Spalte 0 (erste Spalte in der Listbox).
So durchsuche ich im Makro sbVal2LB erst mal alle Controls so lange, bis ich eben die Textbox txtAP gefunden habe.
Dann lese ich den Inhalt aus lblAP aus, hier ist es "Ansp.Partner".
Und wenn ich das gefunden habe, muss ich nur noch die Listbox, Spalte 0, durchsuchen, bis ich auch hier den Eintrag "Ansp.Partner" gefunden habe.
Und jetzt kenne ich die richtige Zeile in der Listbox und muss nur noch in Spalte 1 den Wert aus txtAP eintragen. So steht für Ansprech.Partner der richtige Name drin.
Und all das wird für jede Textbox und für jede Combobox wiederholt.
Ganz wichtig ist aber!
Die Bezeichner der Labels und Frames (Ansp.Partner, Addresse...Lampe, Abstrahlung, usw) MÜSSEN AB JETZT IMMER! genau so heißen, wie die Überschriftenzeile in der Tabelle.

(dieser Absatz ist fett, weil das wirklich wichtig ist)
Hilfts?
Ciao
Thorsten
Anzeige
AW: ListBox zweite Spalte füllen
18.12.2018 06:55:16
Antonio
Hallo Thorsten,
sorry für das ich mich erst jetzt melde, war für die Firma unterwegs.
Das war verdammt gut, nicht nur weil es funzt, das auch, aber das ich eine Merge gelernt habe, besonders im UserForm der Sub "sbVal2LB" wo die Controls auf ein Paar Zeilen reduziert sind und als Sprungbrett für alle Controls dient.
Und danke dir auch für die ausfürliche Erklärung.
Eine Bitte noch, ist es auch möglich der Inhalt einer ListBox auszudrucken?
Würde ich mich freuen wenn ich es abschlissen kann.
Vielen Dank im Voraus
Antonio
AW: ListBox zweite Spalte füllen
18.12.2018 07:54:50
Antonio
Sorry Thorsten,
das mit der ListBox ausdrucken hatte ich schon gelöst.
Du hast sicherlich auf der UserForm ein Image Control gesehen, den würde ich mit dem Inhalt der ListBox mitdrucken.
Im Image1 wird die beschriebene Lampe dargestellt.
Danke im Voraus
Antonio
Anzeige
AW: ListBox zweite Spalte füllen
18.12.2018 18:18:44
Oberschlumpf
Hi Antonio,
wenn ich den Ausdruck mit dem Image-Control erweitern soll, muss ich doch deinen fast fertigen Ausdruck-Code für die Listbox kennen, oder?
Zeig bitte eine weitere Bsp-Datei, die a) den Ausdruck-Code und b) ein oder zwei Lampenbilder enthält.
Ciao
Thorsten
AW: ListBox, Bilder Druck
19.12.2018 06:30:19
Antonio
Hallo Thorsten,
sorry I dachte nicht das ListBox Ausdruck gebraucht wird.
https://www.herber.de/bbs/user/126202.zip
Es sind ein Paar Lampen auch dabei. Pfad im Code anpassen.
Ist es möglich das ich die Größe und die Position der Bilder einstellen kann?
Weil ich ein Paar TextBoxen, als Reserve (Rosa) auf die Form habe, falls mehr Daten verlangt werden.
Und ist es möglich das der Ausdruck der Bilder farbig ist?
Ich war gestern ein wenig verzweifelt und hatte mich fast euntschieden die Form auszudrucken aber ohne Erfolg dar der druck immer schwarz-weis war, der Code hat der color drucker gar nicht angenommen.
Vielen Dank im Voraus
Antonio
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige