2013-09-21 5 views
5

100 개가 넘는 확인란이있는 통합 문서가 있습니다. VBA 매크로가 포함 된 Excel 통합 문서의 모든 확인란 선택 취소

그들은 폼 컨트롤 체크 박스

내가 허위로 설정하면

에서 모두 해제를 선택하고자합니다.

Sub clearcheck() 
ActiveSheet.CheckBoxes.Value = False 
End Sub 

이것은 활성 시트에 적용됩니다. 이 코드를 전체 통합 문서로 사용하고 싶습니다.

코드를 찾고 시도를 해봤지만 확인란을 지우지는 않았지만 현명하지 않았습니다. 어떤 사람이 나에게

을 안내 할 수 있다면 정말 감사하겠습니다

당신을 감사

+0

어떤 종류의 확인란입니까? 폼 컨트롤 또는 ActiveX 컨트롤? –

+0

글쎄, 나는 [GUESS] (http://stackoverflow.com/questions/18927090/excel-active-x-checkbox-uncheck-by-default) 그들은 ActiveX이다. 그 경우 게리의 대답은 그 일을 할 것입니다. –

답변

10

당신은 OLEObject입니다 스타일 (액티브) 체크 박스가있는 경우 :

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

+1 멋진 코드 :) –

+0

안녕하세요 게리, 답장을 보내 주신 많은 분들께 감사드립니다. 체크 박스는 양식 컨트롤이며 활성 x가 아니며이 코드가 계속 작동합니까? – user2533460

+0

안녕하세요 게리, 이것은 활성 시트의 활성 x 확인란에 완벽하게 작동합니다. 클릭하면 하나의 매크로를 찾고 있는데 통합 문서의 모든 양식 컨트롤 확인란을 선택 취소합니다. 조언을주십시오 – user2533460