Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1540to1544
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

Eintrag einer Combobox mit 2 Spalten auswählen

Eintrag einer Combobox mit 2 Spalten auswählen
09.02.2017 18:09:59
Jens
Hallo zusammen
Ich bin ein wenig am verzweifeln und konnte leider leider nichts passendes finden.
Ich habe eine Combobox, die ich mit Werten aus einer Tabelle folgendermasen gefüllt habe:
For i = 1 To tab_name.Cells(1, 2).End(xlDown).Row
With formular1.cbo_Name
.AddItem
.List(.ListCount - 1, 0) = tab_name.Cells(i, 2)
.List(.ListCount - 1, 1) = tab_name.Cells(i, 3)
End With
next I
'tab_name.Cells(i, 2) enthält den Namen des Mitarbeiter
'tab_name.Cells(i, 3) enthält die Personalnummer
Durch einen Doppelklick in der Tabelle Basis soll das Formular geöffnet und alle Felder des Formular gefüllt werden.
Da ich manche Namen doppelt habe und nur die Personalnummer eindeutig ist, möchte ich den Eintrag der Combobox über die zweite Spalte auswählen.
Solange ich in der Combobox nur eine Spalte hatte, habe ich es folgendermasen gemacht:
formular1.cbo_Name = basis.Cells(zeile, 3)
'In Zeile wird vorher die Zeilenzahl ermittelt
Dieser Aufruf funktioniert soweit auch, jedoch nimmt er mir bei doppelten Namen immer den oberen.
Beispiel:
Meier 123
Meier 234
Ich möchte den unteren Meier auswählen.
Für Eure Unterstützung schon mal vorab Vielen Dank

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

Betreff
Datum
Anwender
Anzeige
AW: Eintrag einer Combobox mit 2 Spalten auswählen
09.02.2017 18:16:08
Werner
Hallo Jens,
Versuch doch mal beim Befüllen deiner ComboBox die Personalnummer in die erste Spalte und die Namen der Mitarbeiter in die zweite Spalte einzulesen. Dann hast du in der ersten Spalte deiner ComboBox nur einmalige Einträge.
Gruß Werner
AW: Eintrag einer Combobox mit 2 Spalten auswählen
09.02.2017 19:42:56
Matthias
Hallo! Falls die Variante von Werner nicht geht, nutze den listindex der Combobox iVm mit dem Change Ereignis. Damit bekommst du die Zeile des ausgewählten Elementes. Aber Vorsicht es ist 0 basierend. Also die erste Zeile in der Combobox hat die Zeilennummer 0. HIer mal ein Beispiel zum Testen:
Private Sub ComboBox1_Change()
MsgBox formular1.cbo_Name.ListIndex
End Sub

Das einfach einfügen. Wenn du nun aus der Listbox was auswählst, wird dir die Nummer der Zeile angezeigt.
MIt diesem Listindex kannst du dann beliebig weiter arbeiten.
VG
Anzeige
AW: Eintrag einer Combobox mit 2 Spalten auswählen
10.02.2017 12:52:11
Jens
Hallo
Vielen Dank schon mal.
Beide Lösungsansätze könnte ich mir vorstellen, doch haben beide einen Haken.
Da ich nur eine Spalte angezeigt bekomme, würde ich gerne den Namen und nicht die Kundennummer nach der Auswahl sehen. Kann ich mir beide Spalten anzeigen lassen oder auswählen welche Spalte angezeigt wird.
Mit dem Listindex konnte ich die Zeile auslesen.
Ich habe es aber nicht geschafft, darüber einen Wert auszuwählen.
Gruß Jens
AW: Beispieldatei
10.02.2017 13:21:00
Werner
Hallo Jens,
jetzt ist bei mir mehr unklar als vorher.
Du hast doch eine ListBox mit zwei Spalten Name und Kundennummer, oder hast du eine ListBox mit zwei Spalten und es wird nur eine der Spalten angezeigt?
Da ich nur eine Spalte angezeigt bekomme, würde ich gerne den Namen und nicht die Kundennummer nach der Auswahl sehen. Kann ich mir beide Spalten anzeigen lassen oder auswählen welche Spalte angezeigt wird.
Und das verstehe ich nicht.
Lad doch mal eine Beispielmappe hoch, vielleicht wird dann das Ganze etwas klarer.
Gruß Werner
Anzeige
AW: Beispieldatei
13.02.2017 22:43:59
Jens
Hallo Werner
Ich habe Deinen Vorschlag weiterverfolgt und bin zu einer Lösung gekommen.
Es handelt sich um eine Combobox. Hier ist es (soweit ich weiß) nicht möglich mehrere Spalten angezeigt zu bekommen.
Ich habe das Eigenschaftsfeld "TextColumn" gefunden. Wenn dieser Wert auf 2 steht, wird die zweite Spalte angezeigt. Über eine einfache Zuweisung mit "=" wird der Wert der ersten Spalte ausgewählt und die zweite Spalte angezeigt.
Somit kann ich über die Personalnummer den Mitarbeiter auswählen, bekomme aber wie gewünscht den Namen des Mitarbeiter angezeigt.
Vielen Dank Euch beiden für Eure Hilfe
Gruß Jens
Anzeige
AW: Danke für die Rückmeldung und.....
13.02.2017 23:02:48
Werner
Hallo Jens,
Das geht auch mit einer ListBox
-ListBox mit zwei Spalten
-Spalte 1 Personalnummer / Spalte 2 Name
-Breite der ersten Spalte in den Eigenschaften auf 0 setzen
Schon hast du eine zweispaltige ListBox bei der nur die zweite Spalte angezeigt wird.
Gruß Werner

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige