構文
構文は以下の通りです。
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
' ここに右クリック時の処理を記述
End Sub
' ここに右クリック時の処理を記述
End Sub
解説
Worksheet_BeforeRightClick は、シートを右クリックした時に実行されるイベントです。Targetには、ユーザーが右クリックしたセル範囲が格納され、この情報を使ってどのセルがクリックされたかを知ることができます。Cancelは、通常Falseが設定されていますが、Trueを設定すると右クリック時に処理が実行されません。
プログラミング例
具体的なプログラミング例を紹介します。
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "この範囲で右クリックされました"
Cancel = True ' 右クリックメニューを表示しない
End If
End Sub
If Not Intersect(Target, Range("A1:C3")) Is Nothing Then
MsgBox "この範囲で右クリックされました"
Cancel = True ' 右クリックメニューを表示しない
End If
End Sub
上記のプログラムは、A1からC3のセルが右クリックされると、「この範囲で右クリックされました」のメッセージが表示されます。
まとめ
Worksheet_BeforeRightClickイベントは、シートを右クリックしたときに処理を実行することができます。