• ベストアンサー

EXCEL VBAマクロ中断でデバッグ(コード閲覧)できないようにしたい

EXCEL VBAで、ツール開発をしております。 エラー処理等、組み込んではおりますが、想定外のエラーが起きたときに、ご存知のとおりエラーメッセージウインド([継続] [終了] [デバッグ] [ヘルプ]ボタンが表示されるウインド)が出ます。 これを、出さないようにするか、あるいは[デバッグ]ボタンのみを非表示(グレーアウト可)させたいのです。 理由は、VBAコードを見られないようにマクロにパスワードをかけているのですが、エラーが出て[デバッグ]ボタンを押すと、パスワードを無視して簡単にVBAコードにアクセスできてしまい、すべてのコードが参照可能になってしまいます。 これを防ぎたいのです。 何か良い方法はございますでしょうか? お知恵をお貸しください。よろしくお願いします。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

> エラーが出て[デバッグ]ボタンを押すと、パスワードを無視して簡単にVBAコードにアクセスできてしまい、すべてのコードが参照可能になってしまいます。 パスワードを設定して「プロジェクトを表示用にロックする」にチェックもいれてるんですよね? なら、編集のためなどで一回VBEを開けてませんか? 一度BOOKを終了して再度立ち上げたらそうはならないと思いますが。

THUBAN
質問者

補足

ありがとうございます。 パスワードを設定して「プロジェクトを表示用にロックする」にチェックも入れています。 確かに作成しているのが自分なので編集のため、一回VBEを明けていますね。 おっしゃるとおりやってみたら、[終了]ボタン以外はグレーアウトされていました。 問題なかったんですね。 念のため、No.1で返答したエラー処理も入れておこうかと思っております。

その他の回答 (1)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

内部にエラー処理ルーチンを作成されているかもしれませんが、処理対象外のエラー(あるいは全部?)に対してもエラー処理をして、   継続不能のエラーが発生しました。処理を中断します。        (エラー番号:××××) みたいな表示を出して、正常終了(処理を中断)してしまえばよいのでは?

THUBAN
質問者

補足

ありがとうございます。。。 ん~やはりそうですか・・ On Error GoTo Error_hoge  ・  ・  ・  Exit Sub  Error_hoge:  MsgBox ・・・ End Sub みたいに、Sub内の前後にエラー処理を入れるしかないんですかね? あと、Ctrl+Cでブレイクできないようにすることも必要なのかな。。。

関連するQ&A