- ベストアンサー
メニュー登録のマクロの書き方
エクセルを開いた時のツールバーで、 「ファイル」を選択すると「新規作成」などのメニューが出ますよね。 その中に「印刷範囲」というメニューがあり、 これにカーソルを合わせると更に右に「印刷範囲の設定」「印刷範囲のクリア」というメニューが出てきます。 この、2階層持つメニューをマクロで作成したいのですが、可能でしょうか。 1階層だけであれば、 Set menu1 = Application.CommandBars("worksheet menu bar"). _ Controls.Add(Type:=msoControlPopup, Temporary:=True) menu1.Caption = "ツールバーに表示させるメニュー名" .Controls.Add Type:=msoControlButton With .Controls(1) .Caption = "メニュー1" .OnAction = "メニュー1のマクロの名前?" End With という記述で実現できました。
- みんなの回答 (4)
- 専門家の回答
お礼
回答ありがとうございます。 無事出来ました! 2階層項目を複数作りたかったので、 With Menu1~End Withまでをまるまるコピーしてすぐ後ろに貼り付けてみたのですが、 それだけであっさりできてしまい、 なんとなく釈然としないです…。 変数名とかかぶってることにならないのか、と。 (いや、すんなり進んだのだから喜ぶとこですけど)