- ベストアンサー
エクセルのマクロを用いてチェックボックスをまとめてチェックする方法
エクセルを用いてチェックボックスが縦に並んだ書類を作っているのですが、チェックする項目のパターンが決まっているので毎回同じところにチェックするのが面倒です。 ワンクリックで複数のチェックがかけられるようにしたいのですが、 ツール→マクロ→新しいマクロの記録 で複数のチェック「レ」ができるようにマクロのを登録してみたのですがチェックがかかりません。 何かよい方法は無いでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 全部チェック Sub Test1() 'フォームツール ActiveSheet.CheckBoxes.Value = True End Sub Sub Test2() 'コントロールツール Dim ctrl As Object For Each ctrl In ActiveSheet.OLEObjects If TypeOf ctrl.Object Is MSForms.CheckBox Then ctrl.Object.Value = True End If Next ctrl End Su 個別にチェック Sub Test1a() 'フォームツール ActiveSheet.CheckBoxes(Array(1, 3, 5)).Value = True End Sub Sub Test2a() 'コントロールツール Dim i As Variant For Each i In Array(1, 3, 5) ActiveSheet.OLEObjects("CheckBox" & i).Object.Value = True Next i End Sub なお、シートモジュールの場合は、ActiveSheet. は不要です。
その他の回答 (2)
- n-jun
- ベストアンサー率33% (959/2873)
シートに貼り付けたフォームのチェックボックス1・3・5にチェックを入れて、 それ以外はチェックを外すのなら。 Sub try() Dim c As Excel.CheckBox For Each c In ActiveSheet.CheckBoxes Select Case Replace(c.Name, "Check Box ", "") Case 1, 3, 5 c.Value = xlOn Case Else c.Value = xlOff End Select Next End Sub こんなのとか?
お礼
ご回答ありがとうございました。 どうも会社のPCがすべてマクロ禁止に設定されていることができない原因のようでした・・。お騒がせいたしました。
- pbforce
- ベストアンサー率22% (379/1719)
チェックボックスのValueプロパティをTrueにして下さい。
お礼
ご回答ありがとうございました。 どうも会社のPCがすべてマクロ禁止に設定されていることができない原因のようでした・・。お騒がせいたしました。
お礼
ご回答ありがとうございました。 どうも会社のPCがすべてマクロ禁止に設定されていることができない原因のようでした・・。お騒がせいたしました。