我正在创建一个宏来清除我的表单中的单元格和所有CheckBox,但它只清除第一个组框中的CheckBoxes(并勾选所有其他复选框)。我的代码:
Sub clearcheck()
ActiveSheet.CheckBoxes.Value = False
Range("D4:E4").Select
Selection.ClearContents
ActiveSheet.Shapes.Range(Array("Label 61")).Select
Range("H4:I4").Select
Selection.ClearContents
Range("M4:N4").Select
Selection.ClearContents
End Sub
任何人都可以帮我处理我的代码吗?
答案 0 :(得分:1)
您可能面临将FormControls与ActiveX控件混合的典型问题。试试这段代码,让我知道它是否有效:
Public Sub UncheckAll()
On Error Resume Next
For Each x In Worksheets("Sheet2").Shapes
Select Case x.Type
Case 8
Debug.Print x.Name & " is a FormControl"
x.OLEFormat.Object.Value = False
Case 12
Debug.Print x.Name & " is an ActiveX Control"
Worksheets("Sheet2").OLEObjects(x.Name).Object.Value = False
Case Else
Debug.Print x.Name & " is neither"
End Select
Next x
On Error GoTo 0
End Sub