|
こんにちは。かみちゃん です。
>かみちゃん様の方法はエラーが出て
>myShp.Delete
>を
>デバックせよと出てきました。
「デバッグせよ」ではなく「アプリケーション定義またはオブジェクト定義のエラーです」という
エラーメッセージではないでしょうか?
エラーメッセージが出ているなら、その内容を正確に教えてください。
少なくとも「デバッグせよ」というメッセージは聞いたことありません。
それで、その原因ですが、シートの保護をしてあるとそういうエラーになりるのですが、
そのあたりはいかがでしょうか?
>書かれているコードはブック全部のシートにかかってきてしまうのでしょうか。
>マクロボタンはブック全体で20ぐらいあるのでこのシートだけにしたいのですが。
すみません、ややこしい記述になっていますね。
Set ws = ActiveSheet
' 'すべてのシートに対して処理する
' For Each ws In Worksheets
ということで、すべてのシートを処理する部分は、コメント文にしてあり、
そのかわり、
Set ws = ActiveSheet
で、アクティブシートに対してのみ処理するようにしています。
従いまして、あらかじめ、削除したいシートを選択してから実行してください。
なお、このコードは、以前、以下のように同様の回答をしていまして、そのコードをそのまま流用しています。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=20889;id=excel
|
|