Excel VBA Userform Checkbox.Enabled
#1
Hi Zusammen

Ich stelle gerade ein Userform zusammen, mit mehreren Checkboxen.
Ich hätte gerne das Checkbox2 - 9 gesperrt sind bis ich Checkbox 1 abhake.

Momentan habe ich es nur mit checkbox 1+2 getestet:

Private Sub CheckBox1_Click()
   
    If CheckBox1 = True Then CheckBox2.Enabled = True
    If CheckBox1 = False Then CheckBox2.Enabled = False

End Sub

Leider schaffe ich es nicht das die Checkbox 2 beim öffnen der Formulars grundsätzlich auf Enabled = True steht..
Er reagiert erst wenn ich checkbox1 2x anklicke..

Ist es außerdem möglich den Code so schlank zu halten das ich checkbox 2-9 gleichzeitig ansteuern kann oder muss ich pro checkbox 2 zeilen haben?

Vielen Dank
Top
#2
Hallo,

schau Dirmal dieses Beispiel an:

Gruß
Marcus


Angehängte Dateien
.xlsm   userform_checkbox.xlsm (Größe: 21,58 KB / Downloads: 4)

Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
[-] Folgende(r) 1 Nutzer sagt Danke an marose67 für diesen Beitrag:
  • Zeichner
Top
#3
Smile 
Hi Marcus

Super, das mit UserForm_Activate() wusste ich nicht  :)
Vielen dank!
Top
#4
Hallo,

dafür ist das Forum doch da. Ich bin froh, wenn ich mit meinen alten Tabellen noch jemandem helfen kann.

Gruß
Marcus

Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Top
#5
Hallo Zeichner,

Du kannst die Chekboxen auch in den Eigenschaften auf False stellen, dass muss nicht beim aktivieren der Userform passieren.

Dann die Frage zur Vereinfachung:
Dein eingestellter Code könnte so zusammengefasst werdenPrivate


Code:
Private Sub CheckBox1_Click()
  CheckBox2.Enabled = CheckBox1 = True
End Sub
Gruß Atilla
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste