• ベストアンサー

EXCELLチェックボックスのチェックの一括削除

下のようなエクセルシートでチェックがランダムに入っています。 1個1個クリックしてチェックを解除するのは大変なので一括 で出来る方法がないか悩んでおります。   A B C D 1 □ □ □ □ 2 □ □ □ □ 3 □ □ □ □

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

もし他によい方法がなければ Sub test01() For i = 1 To ActiveSheet.DrawingObjects.Count ActiveSheet.OLEObjects("CheckBox" & i).Object.Value = 0 Next i End Sub を実行するとできます。 チェックボク以外は貼り付けてないこと。 シートに直接コントロールツールボックスのチェックボックスを貼り付けてテストしました。 コマンドボタンにでも登録すればよい。

yokagura
質問者

お礼

実はこの方法のようにコマンドボタンに登録する方法を模索していました。特に("CheckBox" & i)の記述法が大変参考になりました。 チェックボックスが140個もあるものなので。 For i = 1 To 140 ActiveSheet.Shapes("Check Box " & i).Select With Selection .Value = xlOff End With Next i これで解決できました。 ちょっと余談ですが i は Dim i As Integer のように定義しなくてもエラーが出ないのですね(^^; ありがとうございました。

その他の回答 (1)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

フォームのチェックボックスであれば、図形描画のツールバーにある 「オブジェクトの選択:白いカーソル」をクリックして、 全てのチェックボックスを選択する。 1つのチェックボックス上で「右クリック」-「コントロールの書式設定」 の「コントロール」で値をオフにしてOKではどうでしょう?

yokagura
質問者

お礼

過去ログを見るとACCESSでは更新クエリーを使う方法があることが理解できたのですが、EXCELLでは?と悩んでおりました。 この方法があったのかと目から鱗でした。 これで選択して切り取りをするとチェックボックスの一括消去ができることも分かりました。 ありがとうございました。

関連するQ&A