セルの右クリックでマクロを実行する
A1:A10の右クリックで独自メッセージを表示します。
実行前に確認
- 対象範囲内では通常の右クリックメニューを表示しません。対象外は通常どおりです。
1サンプルコード
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Me.Range("A1:A10")) Is Nothing Then Exit Sub
Cancel = True
MsgBox "右クリック: " & Target.Address(False, False)
End Sub図で見る操作の流れ
イメージ図コードに沿った概念図です。実際の画面や実行結果ではありません。
手動:準備
「練習」のシートモジュールへイベントコードを配置
手動:右クリック
A1:A10のセルを右クリック
マクロ:通常動作を中止
Cancel=Trueで通常の右クリックメニューを止める
マクロ:独自表示
「右クリック: 」と対象セルの番地をメッセージ表示
対象範囲外では処理を抜け、通常メニューが使えます。F5で直接実行しません。
コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。
使い方・実行手順を確認する3つの手順で、コードの使い方を確認できます
- 1
練習用のブックをExcelマクロ有効ブック(.xlsm)で保存します。シート名を「練習」にします。
- 2
Alt+F11でVBEを開きます。左のプロジェクト一覧でこのブックの[Microsoft Excel Objects]にある「Sheet番号(練習)」をダブルクリックし、コードを貼り付けます。
- 3
F5では実行せず、Excelに戻りA1を右クリックします。通常のメニューの代わりにメッセージが表示されます。