| 
    
     |  | ▼さち さん: こんばんは。
 
 >はじめまして。
 >
 >Excel2000のVBAで、動的にチェックボックスを貼り付けて、
 >そのOn/Offを判定しようとしています。
 >
 >動的に貼り付けることは、投稿No.6974を参考にさせて
 >頂いて実現することができたのですが、
 >On/Offを判定することができません。
 >どなたか方法を教えてください。
 >
 >VBをまねて以下のように記述してみましたが、
 >オブジェクトがメソッドをサポートしていませんと
 >If s.Value = True Then MsgBox "True"の行でエラーになります。
 >Shapesを使っているのが悪いのでしょうか?
 >ご教授願います。
 このコードは、
 >
 For Each s In ActiveSheet.oleobjects
 If Left(s.Name, 5) = "Check" Then
 If s.object.Value = True Then MsgBox "True"
 
 >  End If
 >Next
 なんてすれば動くとは思いますが、心配なのは、
 >Excel2000のVBAで、動的にチェックボックスを貼り付けて、
 >そのOn/Offを判定しようとしています。
 ↑これ。
 「コントロールツールボックス」にあるコントロールは、
 動的作成に不向きということがこのNo.6974の投稿後に分かってきました。
 (色々な不具合が確認されています)
 予め作成しておくのなら良いのですが・・・。
 
 なのでツールバー「フォーム」のチェックボックスを使用してみてはどうでしょうか?
 
 動的な作成は「マクロの記録」で可能かと思います。
 
 |  |