チェックボックスリセットボタン
https://gyazo.com/7f0f745382f73758790b6737e33ca5d8
コントロールの種類が、
フォームコントロールの場合
nananana.icon こちらを使います
ActiveSheet.CheckBoxes.value = False
チェックボックスのロックをはずしておかないと、シートの保護をした場合にエラーがでます。
チェックボックスのロックはまとめてはずせます。複数のチェックボックスを選択して右クリックからオブジェクトの書式を設定→ロックのチェックをはずす。
https://gyazo.com/3c8f2e275ec9d8c4498fba2d627b86b4
標準モジュールに上記の様に入力すれば完了です。
Sub チェックボックスをはずす()
'
' チェックボックスをはずす Macro
'
On Error Resume Next
For Each obj In ActiveSheet.Shapes
If obj.FormControlType = xlCheckBox Then
obj.DrawingObject.Value = 0
End If
Next
On Error GoTo 0
'
End Sub
nananana.icon アクティブシートにチェックボックスがない場合にはエラーが返ります。チェックされたボックスがない場合は問題ありません。
アクティブXコントロールの場合は、別の記載が必要です。
Dim chk As OLEObject
For Each chk In ActiveSheet.OLEObjects
If chk.progID = "Forms.CheckBox.1" Then
chk.Object.value = False
End If
Next
nananana.icon シートに保護がかかった状態でリセットするためには、チェックボックスのロックを外しておく必要があります。
nananana.icon ロックをかけておけば、任意のチェックボックスのみ常にロック状態を保つこともできます。
https://gyazo.com/f6c944ee1ea0416f1aa41039c17669c3
https://gyazo.com/7892c236eab082387b4c0a0dc3af01ab
サイトメニュー