• ベストアンサー

Excel2000でマクロの「ツール」から実行を出来なくする方法

VBAをシートの「ツール」-「マクロ」-「実行」を出来なくする方法を教えて下さい。 ただ、VBA自体を動かなくさせるのではなく、あくまでもシート上に「ツール」から実行させない方法です。 ボタンに登録してあるマクロは、押す事で実行させたいです。 「ツール」-「マクロ」へ行くのをパスワード管理で制御する方法でも良いです。 Excel2000使用の初心者です。よろしくお願いします。

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

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.2

直接の回答じゃないですが、、 メニューのツール-マクロから実行させたくない理由は何でしょう? もし、複数あるマクロを順序通りに実行させたい等の理由でダイアログに余計なマクロ名を表示させたくないって事なら、Private にすれば表示されません。 標準モジュールに下記のようにマクロを記述した場合、メニューのツール-マクロ では ccc しか表示されません。 Sub ccc()  Call aaa  Call bbb End Sub Private Sub aaa()  MsgBox "aaa" End Sub Private Sub bbb()  MsgBox "bbb" End Sub

fuji39
質問者

お礼

お礼が遅くなり申し訳ありませんでした。 おかげさまで解決する事が出来ました。 ありがとうございました。

その他の回答 (2)

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.3

●「ツール」-「マクロ」のダイアログボックスにマクロを表示させないようにします。 各SheetのコードウインドウやThisWorkbookのコードウインドウの場合、  『Private Sub』 にします。                 ※引数があれば何もしなくても非表示です     標準モジュールに書いたモジュールの場合は、ダミーの引数を書けば表示されません。   (これが見えなくする方法です。ダミーの引数=意味のない引数です) 全て非表示にすれば、編集ボタンも押せません。 ボタンで実行していれば、呼び出し方を少し変えます。(下記に例示) ●「ツール」-「マクロ」のダイアログボックスで操作できなくても、「ツール」-「マクロ」-「Visual Basic Editor」でVBE画面に入れます。 こちらは、ツール→VBAProjectのプロパティ→保護タブ で、パスワードで保護すべきでしょう。 当方、Excel2000です。 -------- シート -------- Private Sub CommandButton1_Click()   Call mod_AAA(dmy)  '// 標準モジュール   Call sht_AAA     '// シート End Sub Private Sub sht_AAA()   MsgBox "sht_AAA!" End Sub -------- 標準モジュール -------- Public dummy Public Sub mod_AAA(dummy)   MsgBox "mod_AAA!" End Sub  

fuji39
質問者

お礼

お礼が遅くなり申し訳ありませんでした。 ご丁寧なご回答感謝致します。 おかげさまで解決する事が出来ました。 ありがとうございました。

  • 0shiete
  • ベストアンサー率30% (148/492)
回答No.1

コマンドバーもVBAで操作できます。

参考URL:
http://www2.moug.net/cgi-bin/technic.cgi?exvba+TI08010013
fuji39
質問者

お礼

お礼が遅くなり申し訳ありませんでした。 役に立つURLをご教示いただきありがとうございました。

関連するQ&A