• 締切済み

EXCELでポップアップメニューを

EXCELで(VBA)ポップアップメニューを作成したいのですが 作り方を教えて下さい。 EXCEL等の上部に「ファイル(F)、編集(E)・・・」あるこれ らのボタンと同等な動作をするものを考えてます。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.1

もちろん処理はVBAでの処理を指定すると思いますので、VBAは覚悟していると思います。 ーー 少し前からCommandbarでメニューやボタンを統一記述する考えが取り入れられているようです。 下記はそれでなく、旧式のコードかもしれませんが2002ではできました。 ーーー Sub test10() '既存メニューへの追加 With Application.MenuBars("Worksheet").Menus("ファイル").MenuItems .AddMenu "HTMLへ変換" End With End Sub ーーー Sub test11() '追加したメニューの削除 With Application.MenuBars("Worksheet").Menus("ファイル"). _ MenuItems("HTMLへ変換").Delete End With End Sub ーーー Sub test12() '定例処理(例)というメニューを現在の「ヘルプ」の右へ追加 Application.MenuBars("Worksheet").Menus.Add ("定例処理") End Sub ーー Sub test13() '追加したメニュー削除 With Application.MenuBars("Worksheet").Menus("定例処理") .Delete End With End Sub ーーー Sub test14() '追加メニューにサブメニュー「作業1」を登録 With Application.MenuBars("Worksheet").Menus("定例処理") .MenuItems.Add ("作業1") End With End Sub ーーー Sub test16() 'メニューに作業1登録したものを削除 With Application.MenuBars("Worksheet").Menus("定例処理").MenuItems("作業1") .Delete End With End Sub ーーー Sub test15() 'サブメニュー「作業1」にアクション(ルーチン)を設定 With Application.MenuBars("Worksheet").Menus("定例処理").MenuItems("作業1") .OnAction = "test02" End With End Sub ーーー アクションの例として Sub test02() MsgBox "AAA" End Sub などを作っておき、テストでクリックしたとき、そこへ飛んで、通ったことを納得。 ーーー これで参考になると思うが、どうでしょう。 削除方法の説明を入れているのは、テスト後に削除が必要でしょうから、です。

hatti001
質問者

お礼

ありがとうございます。 参考にちょっとやってみます。

hatti001
質問者

補足

ユーザーフォムでメニューバーもどきを作成した場合 は、どのようにすれば同じような動きができますか? すいませんが宜しくお願いします。

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

関連するQ&A