Excelのコンテキストメニュー(右クリックメニュー)に独自のメニューを追加する。 今回はシートのタブのコンテキストメニュー(右クリックメニュー)へ追加して、さらにもっと他の場所にも追加する。
Sheetのタブを右クリックした時に現れるメニューへ独自メニューを追加するVBAサンプルコードです。前回と違うのは、Application.CommandBars("Cell") の所が Application.CommandBars("Ply") となっているだけで他の部分は(シンプルにしてしまいましたが)変更していません。
■使用上の注意
RemoveSheetTabMenu()で追加したメニューを削除しないと、どんどん同じメニューが追加されてしまいます。 あなたが実際に使うマクロを創るときには追加したメニューを自動的に削除してから終了するようにするなり、すでに独自メニューがあるときはさらに独自メニューを追加しないようなコードを追加してください。
'AddSheetTabMenu()で独自のメニューをコンテキストメニュー '(右クリックメニュー)に追加する。 'RemoveSheetTabMenu()で追加したメニューを削除する。 Sub AddSheetTabMenu() Dim MyCellMenu As CommandBarControl Set MyCellMenu_01 = CommandBars("Ply"). _ Controls.Add(Type:=msoControlButton, before:=1) With MyCellMenu_01 .Caption = "電卓起動!" .FaceId = 50 .OnAction = "ExecCalc" End With End Sub Sub RemoveSheetTabMenu() CommandBars("Ply").Controls.Item("電卓起動!").Delete End Sub Sub ExecCalc() Shell "calc" End Sub