我有一個Excel工作表,其中兩列CheckBoxes,其中每個的第一個CheckBox是「主」複選框,用於切換所有其他CheckBoxes。
我從This Tutorial得到了密碼。VBA Excel CheckBox選擇工作表上的某些特定複選框
它工作正常,直到我將代碼複製到第二列。
當激活第一個或第二個「Master」複選框時,它激活所有複選框。
第一個「主」複選框被稱爲「MCB1」,第二個在該代碼副本(與另一個子名稱)中被稱爲MCB2。
這裏是我的代碼:
Sub SelectAll_Read()
Dim CB As CheckBox
For Each CB In ActiveSheet.CheckBoxes
If CB.Name <> ActiveSheet.CheckBoxes("MCB1").Name Then
CB.Value = ActiveSheet.CheckBoxes("MCB1").Value
End If
Next CB
End Sub
Sub Mixed_ReadState()
Dim CB As CheckBox
For Each CB In ActiveSheet.CheckBoxes
If CB.Name <> ActiveSheet.CheckBoxes("MCB1").Name And CB.Value <> ActiveSheet.CheckBoxes("MCB1").Value And ActiveSheet.CheckBoxes("MCB1").Value <> 2 Then
ActiveSheet.CheckBoxes("MCB1").Value = 2
Exit For
Else
ActiveSheet.CheckBoxes("MCB1").Value = CB.Value
End If
Next CB
End Sub
在你的第二個段落,我覺得你的意思是:'...對於第2欄中的複選框:MCB2.1,MCB2.2,MCB2.3.' – ARich
@ARICH是的,你是對的。謝謝! – hstay