
Excel VBAでシートを右クリックした時に操作する方法の記録です。
右クリックした時に操作するには「BeforeRightClick」イベントを使います。
< スポンサーリンク >
「BeforeRightClick」構文
Worksheetオブジェクト.BeforeRightClick(Target, Cancel)
ワークシートを右クリックした時に、既定の右クリックの操作の前に発生します。
Target:必須。右クリックしたとき、マウスポインターに最も近いセルが渡されます。
Cancel:必須。イベントが発生すると、Falseが渡されます。イベントプロシージャでこの引数をTrueに設定すると、プロシージャが終了しても既定の右クリックの操作は実行されません。
右クリックした時のVBA使用例
VBEでオブジェクト欄の「(General)」と表示してあるプルダウンの部分を「Wordsheet」を選択し、プロシージャ欄を「BeforeRightClick」を選択します。

「Private Sub Worksheet_SelectionChange・・・End Sub」の部分は必要ないので削除します。

シートを右クリックしたときにセルがC5だったらメッセージを表示し、それ以外は通常のショートカットメニューが表示されるようにしてみます。
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address = "$C$5" Then
Cancel = True
MsgBox Target.Address & "セルをクリックしました"
End If
End Sub
C5のセル上で右クリックするとメッセージが表示されます。

C5以外のセル上で右クリックされると、通常のショートカットメニューが表示されます。

こんな記事も書いています
