Unselect All CheckBoxes From Excel Workbook with VBA Macro

穿精又带淫゛_ 提交于 2019-12-04 01:26:25

问题


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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!