Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
804to808
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
804to808
804to808
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Combobox füllen

Combobox füllen
04.10.2006 08:10:57
Klaus
Guten Morgen zusammen
Ich habe in einer Userform eine Combobox, die ich mit den Werten aus der Tabelle "Pool" (Bereich A10:C250) füllen möchte. In der Combobox sollen die Werte aus den Spalten B+C (Name, Vorname) angezeigt werden. Nach der Auswahl soll in der Tabelle "Pool" in C1 der Wert aus der Spalte A (Personalnummer) übergeben werden. Ich möchte das mit VBA bewerkstelligen und nicht über RowSource)
Im Voraus vielen Dank

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Combobox füllen
04.10.2006 08:30:00
otto
Hi,
hier ein Ansatz:

Private Sub befüllen()
Dim az
Sheets("Pool").Select
ComboBox1.Clear
Cells(10, 1).Select
az = ActiveCell.Row
Do
ComboBox1.AddItem Cells(az, 2) & ", " & Cells(az, 3)
az = az+1
If az = 251 Then Exit Do
Loop
End Sub

Gruß otto
AW: Combobox füllen
04.10.2006 08:52:44
Klaus
Hallo Otto
Vielen Dank für die Hilfe. Die Combobox kann ich mit deinem Code jetzt füllen, aber die Personalnummer erscheint nicht in C1.
Schön wäre es auch, wenn du mir den Code etwas näher erklären könntest, damit ich ihn auf andere Anwendungen anpassen kann.
Gruss Klaus
Anzeige
Sorry Otto, meinte Klaus o.w.T
04.10.2006 10:04:06
EtoPHG
AW: Combobox füllen
04.10.2006 09:35:43
otto
Hi,
hier eine kurze Erklärung:

Private Sub befüllen()
Dim az                                                ' Variable deklarieren
Sheets("Pool").Select                                 ' Tabellenblatt aktivieren
ComboBox1.Clear                                       ' ComboBox leeren
Cells(10, 1).Select                                   ' Cursor in Zelle A10
az = ActiveCell.Row                                   ' Zeile der aktiven Zelle
Do                                                    ' Beginn der Schleife
ComboBox1.AddItem Cells(az, 2) & ", " & Cells(az, 3)  ' Eintrag hinzufügen
az = az+1                                             ' aktive Zeile um 1 erhöhen
If az = 251 Then Exit Do                              ' wenn > 250 dann raus aus
Loop                                                  ' Schleife
End Sub

An Übernahme der Personalnummer arbeite ich noch.
Gruß otto
Anzeige
AW: Combobox füllen
04.10.2006 09:57:16
Klaus
Hallo Otto
Dank für deine Erklärung. Wenn du das mit der Personalnummer noch hinbekommst, wäre es wunderbar.
Gruss Klaus
AW: Combobox füllen
04.10.2006 10:00:26
EtoPHG
Hallo Otto,
Versuch's mal so:

Sub ComboFuellen()
Dim ix As Integer
ActiveSheet.ComboBox1.LinkedCell = ""
ActiveSheet.Range("C1").ClearContents
With ActiveSheet.ComboBox1
.Clear
.ColumnCount = 3
.BoundColumn = 3
.ColumnWidths = "60;60"
For ix = 10 To 250
.AddItem Cells(ix, 2).Value
.List(.ListCount - 1, 1) = Cells(ix, 3).Value
.List(.ListCount - 1, 2) = Cells(ix, 1).Value
Next ix
.LinkedCell = "C1"
.ListIndex = 0
End With
End Sub

Gruss Hansueli
Anzeige
AW: Combobox füllen
04.10.2006 10:27:49
Klaus
Hallo Hansueli
Auch dir Dank füer die Hilfe. Bei deinem Code findet das Makro die Userform nicht....
Gruss Klaus
AW: Combobox füllen
04.10.2006 10:38:08
EtoPHG
Sorry,
Code wäre für eine Combobox auf der Tabelle (nicht in UF).
Hab das leider überlesen,... werd mich bessern ;-)
Gruss Hansueli
AW: Combobox füllen
04.10.2006 10:03:15
otto
Hi,
hier der Code für den Eintrag der Personalnummer in Zelle C1.

Private Sub ComboBox1_Change()
Cells(1, 3) = Cells(ComboBox1.ListIndex + 10, 1)
End Sub

Ich lasse die Frage mal noch offen.
Gruß otto
AW: Combobox füllen
04.10.2006 10:26:02
Klaus
Hallo Otto,
Jetzt klappt es wunderbar. Danke für die Hilfe
Gruss Klaus
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige