我有一个包含100多个复选框的工作簿。使用VBA宏从Excel工作簿中取消选择所有复选框
他们表单控件复选框
我想那是他们设置为false一次
于未将其全部选中。
Sub clearcheck()
ActiveSheet.CheckBoxes.Value = False
End Sub
这适用于活动工作表。我想这个代码是为整个工作簿
我已经尝试寻找代码和搞清楚复选框,但我都不明智。
我会很感激,如果有人能指导我
谢谢
我有一个包含100多个复选框的工作簿。使用VBA宏从Excel工作簿中取消选择所有复选框
他们表单控件复选框
我想那是他们设置为false一次
于未将其全部选中。
Sub clearcheck()
ActiveSheet.CheckBoxes.Value = False
End Sub
这适用于活动工作表。我想这个代码是为整个工作簿
我已经尝试寻找代码和搞清楚复选框,但我都不明智。
我会很感激,如果有人能指导我
谢谢
如果你有OLEOBJECT式(的ActiveX)复选框,然后:
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:如果它们是形式复选框,那么以下将工作:
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
+ 1不错的一个:) –
嗨加里,非常感谢您的回答,复选框是窗体控件,而不是活动X,这个代码仍然工作? – user2533460
嗨加里,这对活动工作表中的活动x复选框完美无瑕。我正在寻找一个宏,单击时将取消选中工作簿中的所有表单控件复选框,请告知 – user2533460
什么样的复选框是那些?表单控制或ActiveX控件? –
嗯,我[GUESS](http://stackoverflow.com/questions/18927090/excel-active-x-checkbox-uncheck-by-default)他们是ActiveX。在这种情况下,盖瑞的答案将完成这项工作:) –