2013-09-21 5 views
5

100を超えるチェックボックスを備えたブックがあります。VBAマクロを使用してExcelブックからすべてのチェックボックスをオフにします

彼らは私が彼らfalseにそれらを設定されていることを一度

すべてを非選択したいフォームコントロールのチェックボックス

です。

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スタイル(の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

+1素敵な1つ:) –

+0

こんにちはゲイリー、あなたの答えのための多くのおかげさん、チェックボックスは、フォームコントロールとアクティブxではない、このコードはまだ動作しますか? – user2533460

+0

こんにちはゲイリー、これは、アクティブなシートのアクティブなxチェックボックスで完璧に動作します。私は1つのマクロをクリックすると、ブック内のフォームコントロールのチェックボックスをすべて選択解除します。助けてください。 – user2533460

関連する問題