• ベストアンサー

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

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

  • fuji39
  • お礼率96% (138/143)

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

  • ベストアンサー
  • 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

  • エクセルVBAの実行保護について教えてください。

    エクセル2000VBAで構文を複数作り、シート上にボタンを配置し実行させたいと思います。 (パスワードで保護させて、VBAの構文は管理者以外に見えないようにしました) その複数のマクロの中には、実行させたくないものもあります。(管理者のみが行うマクロ) シート上のボタンで配置したもののみ実行可能にして、「ツール」-「マクロ」から誰でも実行させないような方法を教えてください。 つたない説明で申し訳ありませんが、ご理解いただけたでしょうか? よろしくお願い致します。

  • EXCEL2010 マクロにつきまして

    excel vbaでマクロが作りたいのですが、まったくの初心者で 試行錯誤していますが、なかなか出来ずに困っています。 どなたか、教えていただけませんでしょうか。 ○sheet1 --日付---|A-B-C -------------------- 2013/1/20|1 2 3 2013/1/21|4 5 6 2013/1/22|7 8 9 2013/1/23|5 4 3 2013/1/24|4 5 6 2013/1/25|4 4 4 2013/1/26   ・   ・   ・ ○sheet2 実行ボタンを作成 日付を入力して実行ボタンをクリックすると指定した日付のデータが抽出される 例 2013/1/22 → 実行 A B C ------- 7 8 9 このようなマクロを組みたいのです。 わかりづらくて申し訳ありません。 また、初心者向けのおすすめの参考書や、ホームページがありましたら 教えて頂けると助かります。

  • Excel:マクロを消す方法教えてください。

    Excelで作業している時に、間違えてマクロを起動させて しまいました。 どのボタンを押してそうなったのかもぅ覚えていません…。 一旦この状態になってしまうと、そのファイルが次のファイルを開く時から 「このファイルはマクロを含んでいます…」というなウィンドウが表示され 毎回マクロを実行・無効の選択をしなくてはなりません。 自分で使う分には問題なかったのですが、 このままでは恥ずかしくて他の人にファイルを送れません。 もちろんワークシートのコピーなどで新しく作り直せばいいのでしょうが、 毎回それではあまりに手間です。 マクロは全くの初心者です。 どうしたら間違えて登録?してしまったマクロを削除できますか? ちなみに、「ツール」⇒「マクロ」⇒「▲マクロ」には 何も表示されていません。 Excelに詳しいかた、宜しくお願いいたします。。。

  • エクセルVBAで全てのマクロを実行するには?

    エクセルVBAの初心者です。 エクセルの他のワークブックからマクロのあるワークブックを開き、値を入れる式は成功したのですが、マクロにはパスワード保護がかかっており、マクロの実行式を入れることができません。 DoCmd.RunMacro で マクロ名は必須のようです。 マクロボタンは1つだけです。 すべてのマクロを実行、というようなコマンドは可能でしょうか?

  • エクセル2000(EXCEL)で日毎で実行させるマクロをひとつのオートシェイプに登録する方法

    エクセル2000(EXCEL)でツール→マクロ→マクロの新しい記録(マクロの自動記録)を使用して日によって実行する内容の違うマクロ31個、つまり31日分のマクロを作ったとします。ひとつのオートシェイプを実行ボタンとして使いこれに日毎によって実行するマクロを変える様に登録する事ってできるのでしょうか?日付が変わっている条件としてはNOW関数で拾えるとしてこの条件を元にひとつのオートシェイプで日ごとに実行するマクロを変えるということはできますか?やっぱり実行ボタンとしてのオートシェイプを31個作りひとつづつマクロを登録していくしかないのでしょうか?またできない場合は他にどんな方法があるでしょうか?分かる方宜しくお願いいたします。

  • マクロが実行できません

    Excel97を使っています。 あるワークブックに4枚のシートがあります。 全てのシートはパスワード付きで保護しています。 VBAProjectのプロパティもパスワード付きで保護しています。 4枚の内の1枚のシートにコマンドボタンを配置して、そのコマンドボタン押下時に、次の動作をするコードを記述しています。 (1)YesNoの確認ダイアログを出す (2)Yesであれば現在のシートをテキスト区切りファイルとして保存する (3)Noであれば何も動作しない ところが、コマンドボタンを押して、確認ダイアログの“はい”ボタンを押すと、「実行時エラー'1004': 'SaveAs'メソッドは失敗しました:'_workbook'オブジェクト」というエラーが出てマクロがストップしてしまいます。 一旦VBAを開いて、VBAProjectのプロパティのパスワード付き保護を解除すれば、正常に動作します。 宜しくお願いします。

  • たまにマクロを実行できないときがある

    Excel VBAを使っていて、 たまにマクロを実行できないときがあります。 特にデバッグ途中というわけでもないのに、 マクロで実行したいプログラムを選択しても実行ボタンがグレー色になっており 実行することができません。 全てのプログラムではなく、実行途中に変な操作が入り、 停止したものだけです。 excelを再起動すると元に戻ります。 これはどういう状態にあるのでしょうか? 再起動せずに復帰する方法を教えてください。

  • Excel マクロ SQL実行について

    いつもお世話になっております。 現在、Excel1997と2007でマクロを作成しております。 使用している環境は様々でOSは2000~XPまでです。 っで質問なんですが、「マクロ」というシートと「データ」というシートがあったとして、「マクロ」シートにはボタンがあり、ボタンを押すとマクロが実行します。 マクロが実行されると「データ」というシートにあるデータをマクロ内のSQLで集計して、新しい「出力」というシートに吐き出します。 現在マクロ内のSQLはDAOライブラリを使用しています。EXCELマクロ内でSQLを使用する場合にDAOやADO等のライブラリを使用せずにSQLを実行することは可能でしょうか?

  • teratermマクロをVBAで実行

    teratermマクロについてご教示願います。 teratermマクロを組んで、Linuxサーバにログインして処理をする.ttlファイルを作成しようと思っています。 その.ttlファイルを、VBAのプログラムから実行することは可能でしょうか? やりたいことは、EXCELのシート上にある「実行」ボタンを押下すると、VBAからteratermマクロが実行される、という処理です。 可能かどうか教えてください。また、もしご存じであればその際の VBAの組み方も同時にご教示いただければと思います。 よろしくお願いいたします。

  • Excel VBA で、マクロを実行するためのパスワード設定方法

    Excel VBA で、マクロを実行する時、ポップアップなどで、パスワードを要求するように設定し、パスワードを入力したら、続きのマクロを実行する方法を教えてください。

専門家に質問してみよう