Ich brauche ein Benutzerformular mit einem Kontrollkästchen, um einige Routine auszuführen. Dieses Benutzerformular benötigt Kontrollkästchen, die basierend auf der Anzahl der Blätter erweitert werden. Bei einem Blatt muss also nur ein Kontrollkästchen mit zwei, zwei Kontrollkästchen usw. vorhanden sein. Die Anzahl der Blätter ist unterschiedlich und basiert auf Benutzereingaben durch eine Menübandtaste. Können mir einige ein bisschen auf die Straße helfen, um das in Gang zu bringen. Unter dem Code habe ich schon. Ich denke, dass es eine viel schönere Art sein muss, dies zu tun.Automatische Erweiterung Benutzerformular Kontrollkästchen, wenn Blatt hinzugefügt wird
Private Sub All_Sheets_Click()
Dim x As Integer
Dim i As Integer
x = 1
For i = 1 To 30
With Userform1
.Controls("SheetCheckBox" & x).value = True
End With
x = x + 1
Next i
End Sub
Private Sub Undo_Click()
Dim x As Integer
Dim i As Integer
x = 1
For i = 1 To 30
With Userform1
.Controls("SheetCheckBox" & x).value = False
End With
x = x + 1
Next i
End Sub
Private Sub UserForm_Initialize()
Dim numsht As Long
numsht = ThisWorkbook.Worksheets.Count
If numsht = 1 Then
SheetCheckBox1.Visible = True
ElseIf numsht = 2 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
ElseIf numsht = 3 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
ElseIf numsht = 4 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
ElseIf numsht = 5 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
ElseIf numsht = 6 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
ElseIf numsht = 7 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
ElseIf numsht = 8 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
ElseIf numsht = 9 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
ElseIf numsht = 10 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
ElseIf numsht = 11 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
ElseIf numsht = 12 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
ElseIf numsht = 13 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
ElseIf numsht = 14 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
ElseIf numsht = 15 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
ElseIf numsht = 16 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
ElseIf numsht = 17 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
ElseIf numsht = 18 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
ElseIf numsht = 19 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
ElseIf numsht = 20 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
ElseIf numsht = 21 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
ElseIf numsht = 22 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
ElseIf numsht = 23 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
ElseIf numsht = 24 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
SheetCheckBox24.Visible = True
ElseIf numsht = 25 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
SheetCheckBox24.Visible = True
SheetCheckBox25.Visible = True
ElseIf numsht = 26 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
SheetCheckBox24.Visible = True
SheetCheckBox25.Visible = True
SheetCheckBox26.Visible = True
ElseIf numsht = 27 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
SheetCheckBox24.Visible = True
SheetCheckBox25.Visible = True
SheetCheckBox26.Visible = True
SheetCheckBox27.Visible = True
ElseIf numsht = 28 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
SheetCheckBox24.Visible = True
SheetCheckBox25.Visible = True
SheetCheckBox26.Visible = True
SheetCheckBox27.Visible = True
SheetCheckBox28.Visible = True
ElseIf numsht = 29 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
SheetCheckBox24.Visible = True
SheetCheckBox25.Visible = True
SheetCheckBox26.Visible = True
SheetCheckBox27.Visible = True
SheetCheckBox28.Visible = True
SheetCheckBox29.Visible = True
ElseIf numsht = 30 Then
SheetCheckBox1.Visible = True
SheetCheckBox2.Visible = True
SheetCheckBox3.Visible = True
SheetCheckBox4.Visible = True
SheetCheckBox5.Visible = True
SheetCheckBox6.Visible = True
SheetCheckBox7.Visible = True
SheetCheckBox8.Visible = True
SheetCheckBox9.Visible = True
SheetCheckBox10.Visible = True
SheetCheckBox11.Visible = True
SheetCheckBox12.Visible = True
SheetCheckBox13.Visible = True
SheetCheckBox14.Visible = True
SheetCheckBox15.Visible = True
SheetCheckBox16.Visible = True
SheetCheckBox17.Visible = True
SheetCheckBox18.Visible = True
SheetCheckBox19.Visible = True
SheetCheckBox20.Visible = True
SheetCheckBox21.Visible = True
SheetCheckBox22.Visible = True
SheetCheckBox23.Visible = True
SheetCheckBox24.Visible = True
SheetCheckBox25.Visible = True
SheetCheckBox26.Visible = True
SheetCheckBox27.Visible = True
SheetCheckBox28.Visible = True
SheetCheckBox29.Visible = True
SheetCheckBox30.Visible = True
Else:
MsgBox "Need more checkboxes!" & vbNewLine & "Contact Jan Wieland for more details", vbCritical
End If
'Uncheck DataCheckBoxes
SheetCheckBox1.value = False
SheetCheckBox2.value = False
SheetCheckBox3.value = False
SheetCheckBox4.value = False
SheetCheckBox5.value = False
SheetCheckBox6.value = False
SheetCheckBox7.value = False
SheetCheckBox8.value = False
SheetCheckBox9.value = False
SheetCheckBox10.value = False
SheetCheckBox11.value = False
SheetCheckBox12.value = False
SheetCheckBox13.value = False
SheetCheckBox14.value = False
SheetCheckBox15.value = False
SheetCheckBox16.value = False
SheetCheckBox17.value = False
SheetCheckBox18.value = False
SheetCheckBox19.value = False
SheetCheckBox20.value = False
SheetCheckBox21.value = False
SheetCheckBox22.value = False
SheetCheckBox23.value = False
SheetCheckBox24.value = False
SheetCheckBox25.value = False
SheetCheckBox26.value = False
SheetCheckBox27.value = False
SheetCheckBox28.value = False
SheetCheckBox29.value = False
SheetCheckBox30.value = False
End Sub
Willkommen zu SO! Was hast du bisher versucht? SO ist kein Code-Schreibdienst. – DragonSamu
Hallo DragonSamu. Ich bin mir bewusst, dass SO nicht für Code-Schreiben-Service ist. Aber ich habe eine Menge Codes gelesen, aber bis jetzt war keiner nützlich. Ich bin kein häufiger Benutzer von VBA und habe ein laufendes Projekt zur Verbesserung. So ist es nicht sinnvoll für mich :) –
Ich verstehe, aber Sie müssen immer noch Ihre Bemühungen zeigen. Derzeit steht Ihre Frage so, als würde nach Code gefragt, aber keine Mühe oder Forschung gezeigt. SO ist eine Seite, die für jeden bestimmt ist, sobald Ihre Frage beantwortet wird, andere Leute könnten daraus lernen. Derzeit wird niemand davon als reine Codeanforderung erfahren. Bearbeiten Sie die Frage und geben Sie Ihre Forschung und was Sie versucht haben, dann werden Sie sehen, dass Menschen mehr als bereit sind zu helfen. – DragonSamu