![]() |
Betrifft: ComboBox
von: rolf
Hallo
ich möchte gerne eine zweite combobox hinzufügen.
wie muß das makro verändert werden ?
combobox2 soll in spallte f suchen.
Private Sub UserForm_Initialize()
Dim lngZ As Long
For lngZ = 2 To Sheets("Abstammungen").Range("G65536").End(xlUp).Row
ComboBox1.AddItem Sheets("Abstammungen").Cells(lngZ, 7)
Next
End Sub
mfg rolf
![]() |
Betrifft: AW: ComboBox
von: Luschi
Geschrieben am: 01.08.2008 18:39:27
Hallo Rolf,
so sollte es funktionieren:
Private Sub UserForm_Initialize()
Dim lngZ_1 As Long, lngZ_2 As Long, _
myArr_1() As Variant, myArr_2() As Variant
'Spalte G
lngZ_1 = Worksheets("Abstammungen").Range("G65536").End(xlUp).Row
myArr_1 = Sheets("Abstammungen").Range("G2:G" & lngZ_1).Value
'Spalte F
lngZ_2 = Worksheets("Abstammungen").Range("F65536").End(xlUp).Row
myArr_2 = Sheets("Abstammungen").Range("F2:F" & lngZ_2).Value
Me.ComboBox1.List = myArr_1
Me.ComboBox2.List = myArr_2
End Sub
Dabei sind myArr_1 und myArr_2 Arrays (Datenfelder), denen man einen Range-Bereich ohne Schleifen-Durchlauf zuordnen kann.
Die List-Eigenschaft der Combobox ist in der Lage den Inhalt des Arrays einzulesen. Das ist schneller als eine For-Schleife mit dem AddItem-Befehl.
Gruß von Luschi
aus klein-Paris
![]() |
Betrifft: AW: ComboBox
von: rolf
Private Sub ComboBox1_Change()
'Daten aus Spalten und aktueller ZeilenNr in Textbox übertragen
TextBox63.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 7)
TextBox57.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 8)
TextBox59.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 9)
TextBox51.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 12)
TextBox94.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 20)
TextBox15.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 60)
End Sub
Private Sub ComboBox2_Change()
'Daten aus Spalten und aktueller ZeilenNr in Textbox übertragen
TextBox68.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 6)
TextBox63.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 7)
TextBox61.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 23)
TextBox55.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 27)
TextBox87.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 35)
TextBox83.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 76)
TextBox65.Text = ActiveSheet.Cells(ComboBox1.ListIndex + 2, 22)
End Sub
danke mfg rolf
![]() |
Betrifft: AW: ComboBox
von: rolf
Geschrieben am: 01.08.2008 21:44:19
hallo
ich habe den fehler gefunden.
danke !
mfg rolf
![]() |