- ベストアンサー
チェックボックスの判定
VBAでチェックボックスが10個あったとして、チェックが付いているか確認したいのですが、 For i=0 to 9 if CheckBox & i =True then 処理 End if Next i と記述すると CheckBoxのところで「変数が定義されていません」というエラーメッセージが出ます。 このような判定はどうすれば良いでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>VBAでチェックボックスが10個 コントロールの名前を変数として用いるのであれば、Controlsを使います。 標準でしたら添え字は1から始まるのでiは初期値1ではないでしょうか。 0~9に変更されているのであればご提示の「i = 0 to 9」で置き換えてください。 For i = 1 to 10 If Controls("CheckBox" & i) = True Then 処理 End if Next i http://www.moug.net/tech/exvba/0140013.html
その他の回答 (1)
- eden3616
- ベストアンサー率65% (267/405)
回答No.2
No1です。 文章がおかしいですね。 >>標準でしたら添え字は1から始まるのでiは初期値1ではないでしょうか。 標準でしたら、コントロールに付く添え字は1から始まる連番となります。 コントロールのオブジェクト名は「CheckBox1~10」ではないでしょうか? 訂正いたします。