Hallo,
hast du immer 5 Sheets?
...eigentlich egal hier mal etwas Code wie es aussehen könnte.
Allerdings habe ich es komischer weise nicht mit Checkboxen hinbekommen.
Habe dafür dann Toggel-Button genommen, finde ist auch machbar
Das in ein "Modul"
Option Explicit
Public ChB() As clChkBox
Sub Makro1()
UserForm1.Show
End Sub
Das hier in die "UserForm"
Option Explicit
Private Sub UserForm_Activate()
Dim i As Integer
For i = 1 To ActiveWorkbook.Sheets.Count
ReDim Preserve ChB(i - 1)
Set ChB(i - 1) = New clChkBox
Set ChB(i - 1).tb = UserForm1.Controls.Add("Forms.ToggleButton.1", "MK_CB_" & Format(i, "00"))
ChB(i - 1).tb.Top = ChB(i - 1).tb.Height * (i - 1)
ChB(i - 1).tb.Width = 100
ChB(i - 1).tb.Caption = ActiveWorkbook.Sheets(i).Name
ChB(i - 1).tb.Tag = i
Next i
End Sub
Und dann das wichtigste, du benötigst eine "Klasse mit dem Namen "clChkBox"
Option Explicit
Public WithEvents tb As ToggleButton
Private Sub tb_Click()
Dim s() As Variant
Dim i As Integer
Dim anz As Integer
For i = 0 To UBound(ChB)
If ChB(i).tb.Value Then
ReDim Preserve s(anz)
s(anz) = ChB(i).tb.Caption
anz = anz + 1
End If
Next i
Sheets(s).Select
End Sub
Wenn du nun die Userform aurufst, kannst du die Blätter auswählen, und sie werden entsprechend auch gleich ausgewählt.
Gruß Markus
|