excel - 通过 CommandButton 取消选中整个工作簿中的所有复选框

标签 excel checkbox activexobject vba

我想要一个代码来取消选中工作簿中所有工作表的所有名为“CheckBox1”的复选框。不幸的是,我当前的代码不起作用,我不确定为什么 - 它只适用于事件工作表。

Private Sub CommandButton1_Click()

    Dim Sheet As Worksheet
    For Each Sheet In ThisWorkbook.Worksheets

        Select Case CheckBox1.Value
        Case True: CheckBox1.Value = False
        End Select  
    Next
End Sub

最佳答案

此代码遍历所有工作表(名为 Sheet100OtherSheet 的工作表除外)并取消选中 所有名为 CheckBox1

ActiveX 复选框
Sub uncheck_boxes()

    Dim ws As Worksheet
    Dim xbox As OLEObject
    For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> "Sheet100" And ws.Name <> "OtherSheet" Then
            For Each xbox In ws.OLEObjects
                ws.OLEObjects("CheckBox1").Object.Value = False
            Next
        End If
    Next
End Sub

取消选中所有工作表中的所有 ActiveX 复选框,忽略使用的名称

Sub uncheck_all_ActiveX_checkboxes()

    Dim ws As Worksheet
    Dim xbox As OLEObject
    For Each ws In ThisWorkbook.Worksheets
        For Each xbox In ws.OLEObjects
            ws.OLEObjects(xbox.Name).Object.Value = False
        Next
    Next
End Sub

要取消选中电子表格上的所有 Form Control 复选框,请使用

Sub uncheck_forms_checkboxes()

    Dim ws As Worksheet
    Dim xshape As Shape
    For Each ws In ThisWorkbook.Worksheets
        For Each xshape In ws.Shapes
            If xshape.Type = msoFormControl Then
                xshape.ControlFormat.Value = False
            End If
        Next
    Next
End Sub

关于excel - 通过 CommandButton 取消选中整个工作簿中的所有复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16818207/

相关文章:

excel - 如何检查子字符串是否在Excel工作表行中的任何条目中?

javascript - Javascript 复选框的问题

javascript - XML 解析在 Chrome 中不起作用

javascript - 在 JavaScript/HTM 页面中禁止 ADO 安全警告

excel - 如何解决索引超过矩阵尺寸的问题-MATLAB

vba - 将 Excel 工作簿保存在新创建的同名文件夹中

java - 在 JavaFX TreeTableColumn 上居中 CheckBox

javascript - 保存并退出 ActiveX 对象

Excel:如何更改日期列以仅显示日期的月份?

html - 如何将复选框和文本保持在同一行