ich möchte über Auswahlfelder bestimmte Makros aktivieren. Dazu habe ich eine Userform angelegt, auf der 4 verschiedene Frames mit einer Anzahl von Checkboxen liegt. Die Bezeichnung (Caption) der Frames und die Bezeichnung (Caption) der Checkboxen sollen aus einer Tabelle entnommen werden, da sich das öfter ändern kann. Mein Problem liegt nun darin, dass das Makro zwar alle Bereiche der Tabelle richtig durchläuft, aber die Eintragung der Checkbox.Caption immer nur im Frame 1 erfolgt ...
Irgendwie stehe ich total auf dem Schlauch und hoffe bei den Profis hier, Hilfe zu finden ... hier mal der Source-Code der Userform dazu:
Private Sub UserForm_Initialize()
Dim rngFrameCap, rngCBCap As Range
Dim iCount, iCol, lCol, iRow, lRow As Integer
Dim crtl As Control
'letzte Zeile in Spalte A suchen
'lRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
'lRow = ActiveSheet.UsedRange.Rows.Count
'letzte Spalte in Zeile 1 suchen
lCol = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
'lCol = ActiveSheet.UsedRange.Columns.Count
Set rngFrameCap = Range(Cells(1, 1), Cells(1, lCol))
For iCol = 1 To lCol
If iCol Mod 2 = 0 Then
Controls("Frame" & iCol / 2).Caption = rngFrameCap(iCol)
iRow = 2
lRow = ActiveSheet.UsedRange.Rows.Count
Set rngCBCap = Range(Cells(iRow, iCol), Cells(lRow, iCol))
'rngCBCap.Select
For iRow = 1 To lRow
If IsEmpty(rngCBCap(iRow)) Then
With Controls("CheckBox" & iRow)
.Enabled = False
.Caption = "nicht belegt"
End With
Else
With Controls("CheckBox" & iRow)
.Enabled = True
.Caption = rngCBCap(iRow)
End With
End If
Next iRow
End If
Next iCol
End Sub
Danke schon mal im Voraus für die Hilfe ...
Gruß
Vinz