• ベストアンサー

EXCEL VBA:シートの右クリックメニューへの追加方法

(1)EXCEL VBAで、シートの右クリックメニューへの追加方法が下記の通り、ある本に載っていたので試してみましたが、うまく動作しません。 どこが間違っているか教えて下さい。  Sub シートの右クリックメニュー追加()  With CommandBars("Ply").Controls.Add  .Caption = "AAA(メニューの表示文字)"  .OnAction = "BBB(実行するマクロ名)"  .BeginGroup = True  End With  End Sub (2)上記「シートの右クリックメニュー追加」+BBBマクロをアドインへ組み込み、皆さんへ配布して、右クリックメニューで動作させたいのですが、やり方を教えて下さい。 宜しく、お願いします。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

>シートの右クリックメニューへの追加方法が下記の通り >With CommandBars("Ply").Controls.Add セルを右クリックをした時に表示されるショートカットメニューを操作するにはCommandBars("Cell")です。 CommandBars("Ply")は、シート見出しを右クリックした時に表示されるショートカットメニューです。

pegasusv
質問者

お礼

回答有難うございました。 シート見出しを右クリックしたら、表示されてました。 また、CommandBars("Cell")に変更したら、セルを右クリックで表示されました。 (2)について、再度質問しますので、ご存じなら回答お願いします。

その他の回答 (2)

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

Plyにおかしいなと思い 下記を標準モジュールにおいて実行する Sub シートの右クリックメニュー追加() With CommandBars("Cell").Controls.Add .Caption = "AAA(メニューの表示文字)" .OnAction = "BBB" '実行するマクロ .BeginGroup = True End With End Sub ーーーー Sub bbb() MsgBox "AAA" End Sub 上記を実行すると、シートで右クリックすると一番下に AAA(メニューの表示文字)"、が出てクリックすると、Msgbox でAAAが出ました。 これらをAuto_Openなどに入れてブックを開くときに、「シートの右クリックメニュー追加()」を実行させるようにしたら。

pegasusv
質問者

お礼

回答有難うございました。 シート見出しを右クリックしたら、表示されてました。 また、CommandBars("Cell")に変更したら、セルを右クリックで表示されました。 Auto_Openの件、有難うございます。 しかし、アドインへの組み込みに拘っていますので、(2)について、再度質問します。 ご存じなら回答お願いします。

  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.1

>うまく動作しません。 どこまで動作を確認しているのでしょうか? シートを右クリックしても追加したメニューが表示されないのか。 それともメニューをクリックしてもマクロが実行されないのか。 エラーメッセージは出ないのか。 「シートの右クリックメニュー追加」のマクロは実行しましたか? 「BBB」のマクロは標準モジュールに追加しましたか?

pegasusv
質問者

お礼

回答有難うございました。 シート見出しを右クリックしたら、表示されてました。 (回答番号:No.2の通りで、勘違いしてました。) (2)について、再度質問しますので、ご存じなら回答お願いします。