dポイントプレゼントキャンペーン実施中!

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

A 回答 (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
などを作っておき、テストでクリックしたとき、そこへ飛んで、通ったことを納得。
ーーー
これで参考になると思うが、どうでしょう。
削除方法の説明を入れているのは、テスト後に削除が必要でしょうから、です。

この回答への補足

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

補足日時:2007/06/27 14:51
    • good
    • 0
この回答へのお礼

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

お礼日時:2007/06/27 14:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!