问题
I have a workbook with over 100 checkboxes.
They are form control checkboxes
I would like to un-select them all at once
that is set them to false.
Sub clearcheck()
ActiveSheet.CheckBoxes.Value = False
End Sub
This works for the active sheet. I would like this code to be for the whole workbook
I have tried looking for the code and messing about with clearing the checkboxes but am none the wiser.
I would really appreciate if some one could guide me
thank you
回答1:
If you have OLEObject-style (ActiveX) checkboxes, then:
Sub terranian()
Dim o As Object
For Each o In ActiveSheet.OLEObjects
If InStr(1, o.Name, "CheckBox") > 0 Then
o.Object.Value = False
End If
Next
End Sub
EDIT1:
If they are forms checkboxes , then the following will work:
Sub clearcheck()
Dim sh As Worksheet
For Each sh In Sheets
On Error Resume Next
sh.CheckBoxes.Value = False
On Error GoTo 0
Next sh
End Sub
来源:https://stackoverflow.com/questions/18927684/unselect-all-checkboxes-from-excel-workbook-with-vba-macro