Peter Mogford
Peter Mogford

Reputation: 496

Auto Select Checkbox triggered by another checkbox

I am trying to auto select a checkbox if any another checkbox is selected. All this checkboxes are on the same sheet and basically i want check box 7 to tick if checkbox 3,4 or 5 is selected.

Private Sub Worksheet_Change(ByVal Target As Range)

If Sheets("Start Page").CheckBox3 = True Or Sheets("Start Page").CheckBox4 = True Or 
Sheets("Start Page").CheckBox5 = True Then
Sheets("Start Page").CheckBox7 = True
Else
End If

End Sub

Any help would be greatly appreciated.

Upvotes: 1

Views: 965

Answers (1)

FunThomas
FunThomas

Reputation: 29146

Even if your checkboxes are linked to a cell (LinkedCell-property), the Worksheet-Change-event is not triggered when you click on a Checkbox.

You need to catch the Click-Event of the checkboxes. For every checkbox, put a Click-event routine into the sheet module. To prevent that the logic if or if not to set the "calculated" checkbox is repeated, let those event handler call a common routine that does the calculation.

Private Sub CheckBox3_Click()
    Call SetMyCheckBox
End Sub

Private Sub CheckBox4_Click()
    Call SetMyCheckBox
End Sub

Private Sub CheckBox5_Click()
    Call SetMyCheckBox
End Sub

Sub SetMyCheckBox()
    Me.CheckBox7.Value = Me.CheckBox3.Value Or Me.CheckBox4.Value Or Me.CheckBox5.Value
End Sub

You should, by the way, consider to give your checkboxes more meaningful names.

Upvotes: 2

Related Questions