• ベストアンサー

Excel VBA メニューを作成するマクロの作り方

社内の各PCに、マクロを実行させるメニューを作成します。でも、各自に設定してもらうには説明が大変なので、自動作成できるマクロをぜひ作りタイのです。 内容は、「マクロ」という名前のメニューを新規でつくり、その中に5種類のメニューボタンを設定する、です。 サンプル集を読んでも、よくわかりませんでした。 わかる方がいらっしゃいましたら、ぜひよろしくお願いします。

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

  • ベストアンサー
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.3

コマンドバーは難しいですよ 初心者には無理なのではと個人的に思います ユーザーフォームをモードレスで表示する方が、お手軽簡単だと思うのですが如何 一応、最低限のコードは提示しますが、理解できなければ使用しないほうが良いと思います Sub コマンドバーメニュー作成() CommandBars.Add(Name:="まくろ", temporary:=True).Visible = True CommandBars("まくろ").Controls.Add(Type:=msoControlPopup, temporary:=True).Caption = "まくろメニュー(&N)" CommandBars("まくろ").Controls("まくろメニュー(&N)").Controls.Add(Type:=msoControlButton).Caption = "まくろ1" CommandBars("まくろ").Controls("まくろメニュー(&N)").Controls("まくろ1").OnAction = "test1" CommandBars("まくろ").Controls("まくろメニュー(&N)").Controls.Add(Type:=msoControlButton).Caption = "まくろ2" CommandBars("まくろ").Controls("まくろメニュー(&N)").Controls("まくろ2").OnAction = "test2" CommandBars("まくろ").Controls("まくろメニュー(&N)").Controls.Add(Type:=msoControlButton).Caption = "まくろ3" CommandBars("まくろ").Controls("まくろメニュー(&N)").Controls("まくろ3").OnAction = "test3" End Sub Sub test1() MsgBox "まくろ1 実行" End Sub Sub test2() MsgBox "まくろ2 実行" End Sub Sub test3() MsgBox "まくろ3 実行" End Sub >サンプル集を読んでも、よくわかりませんでした。 との事なので、あえてWithや変数など使用せずにダラダラ書いてみました 余計わかり難いかも

dengennao
質問者

お礼

なんとなく、内容はわかりました やってみます いろんな方法がありますね ありがとうございました

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

>5種類のメニューボタンを設定する、です。 最初に5種類のメニューボタンを配置したファイルを配って 各自で不要なボタンを削除してもらうではダメなのでしょうか。

全文を見る
すると、全ての回答が全文表示されます。
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

>でも、各自に設定してもらうには説明が大変なので、自動作成できるマクロをぜひ作りタイのです。 メニューの作成はサンプルを読んで実験的な事から試行錯誤で作る事は可能です。 他人のパソコンにそれを入れると言うのは実行手順としてほぼ不可能。 何の作業に使うのか解りませんが、マクロ専用のブックを開いて作業をするように指示した方が無難です。 アドインにしてインストールする事も可能ですが、自動実行(アドインの自動登録や削除)させるにはそれなりの知識が必用です。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル マクロについて

    自動マクロで作成したマクロのモジュールを コマンドボタンのコードに貼り付けたのですが 実行できません。 自動マクロからでは実行できるのですが。。。

  • EXCELマクロのボタンについて教えて下さい

    マクロを実行したいファイルがあり、複数のシートがあります。 今後も多様するものなので、メニュー用のシートを作り、そこにマクロの実行ボタンを何種類か置きたいと思っています。 メニュー用のシートを作り、ボタンにマクロを登録しても、そのシート上でしか動きません。 他のシートのデータを操作することはできないのでしょうか? よろしくお願いします。

  • エクセル マクロ ショートカットキーの割当

    エクセル(Ver2000)で簡単なマクロを作って、マクロ/オプションからショートカットキーでIを割当てました。(自動的にCtrl+Shift+Iが設定される) しかし、Ctrl+Shift+Iを押しても実行されません。 そのほかの方法(メニューから実行、マクロボタンから実行など)では、問題なく実行されます。 何か他に設定があるのでしょうか。

  • エクセルのマクロについてです。

    学年名簿のファイルからマクロ実行ボタンを作成し、ボタンを押すと学年名簿のファイルを3つ複製して 名前を1組、2組、3組とファイルの名前を変更するマクロができるでしょうか。マクロの記録で実行しましたがうまくいきませんでした。ご教授お願いします。

  • EXCEL VBAでメニュー作成時のメニュー名表示

    EXCEL VBAでサブメニューなしのメニューを下記コードで作成したところ、 メニューにメニュー名"新しいメニュー(&C)"が表示されず、 メニューの領域(表現がいまいちですが..)のみ作成されます。 (EXCEL=2002SP3 OS=WindowsXP Home Edition Ver.2002 SP2) Dim myBar As CommandBarButton Set myBar = Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:=msoControlButton) myBar.Caption = "新しいメニュー(&C)" myBar.OnAction = "マクロ" myBar.Visible = True 作成したメニューで右クリックから"ユーザー設定"画面を表示し内容を見ると、 "名前(N):"には"新しいメニュー(&C)" と設定されているのですが、 "既定のスタイル(U)"にチェックが入っており、これを "テキストのみ表示(T)"にチェックを入れると、メニューに 名前"新しいメニュー(&C)"が表示されます。 作成したメニューの名前の表示方法(VBAから)をご教授ねがいます。

  • エクセルでのマクロ作成

    エクセルで作成したボタンをクリックすると以下の事を行うマクロを作りたいと思っています。 (1)最初に貼り付けたいセルの範囲をドラッグで選択する。(手動) (2)マクロを登録したボタンを押す。 (3)マクロ内で指定したセル(たとえば $A$1)をコピーして、(2)でボタンを押してマクロを実行する前に(1)で選択したセルの範囲に貼り付ける。 VBAが分からないので難儀しています。 宜しくお願いします。

  • Excel コマンドボタンにマクロ設定!

    皆さんに色々教えて頂き、「コマンドボタンにマクロを設定→実行」まではなんとか出来るようになりました。^^ しかし。。。 (Windows XP) 「Sheet1」でコマンドボタンを作成し、マクロを設定 マクロ内容:「Sheet1」のコピー(「Sheet1」に作成した表の雛形を繰り返し使いたい為) マクロの設定を終え、ボタンを押すと「Sheet1」のコピーは作成されるのですが、 コピーされた全てのSheetに、コマンドボタンも一緒にコピーされてきます。(T_T) 1.マクロを設定したコマンドボタンは、最初のSheetにだけあればいいような気がするのですが、どうなのでしょうか? 2.どうすればコマンドボタンは張り付いてこなくなるのでしょうか? 宜しくお願いします。 P.S マクロ・コマンドボタンについてもあまり詳しくない為、質問の内容が分かりづらくてすみません。m(__)m

  • エクセルアドインから独自メニュー追加

    簡単なマクロを作成し、 エクセルアドインとして追加し、 何らかのcsvファイルを開いた際に メニュー中の「アドイン」をクリックすると メニューコマンド欄に○○というメニューを作成し それを選択し△△というメニューを表示させ それをクリックすることで、 アドインとして追加したマクロを実行できるようにしたいと 考えています。 この場合 メニューに追加するプログラムを どこかで実行する必要があるかと思うのですが、 何処で実行するように組み込めばいいでしょうか? いままでは エクセルマクロ自体で開いたときに 上記の質問内容の様にメニューが作成されるように 作成したことはありますが、 (このときはThisworkbookに記述しました) 今回何らかのファイルを開いた際に、 マクロがメニューから実行できるように したいので、 アドオンとして追加してメニュー追加するようにしたいと 考えています。 よろしくお願いします。

  • EXCELでマクロ

    グラフを作るマクロを作成したのですが、 ツール→マクロ実行  をしなくても、ワークシートに、「グラフ作成」などの題をつけたクリックして実行されるボタンがつくっているのを見ました。どのように、ボタンをつくるのでしょうか。

  • エクセル VBA 関数 マクロ

    初めまして、質問があります。 よろしくお願いします。 MSエクセル2003を使用して下記のような操作を実行したいと考えています。 その際に必要なVBA、関数、マクロをご教授頂きたいのです。 キーワードでや解説ページのリンクでも構いませんのでよろしくお願い致します。 ・ある性能を比較するグラフを自動で作成したい あらかじめ、機種と性能(一定の周波数(100Hz~10kHz)とその時の出力(dB))を 入力した表を作る マクロ起動ボタンを押すと、表中の機種を選択する画面が表示され プルダウンメニューから比較したい機種を選ぶ(出来れば6機種くらい) 選択後、グラフ作成ボタンを押せば、目的のグラフが出来上がる 自分自身でも調べてはいるのですが、手探り状態なのでお力お借りできればという次第です。 キーワードだけでも構いませんので、どうかよろしくお願い致します。

専門家に質問してみよう