VBAのBeforeRightClickイベント
こちらでは、エクセルVBAのBeforeRightClickイベントの解説になります。
イベントとはオブジェクトに対する処理や操作のことを言います。例えば、ワークシートをアクティブにした時に発生するBeforeRightClickイベントやセルをマウスでダブルクリックした時に発生するBeforeRightClickイベントなどがあります。
オブジェクト名.メソッド名
目次
BeforeRightClickイベント
BeforeRightClickイベントは、既定の右クリックの操作の前に、ワークシートを右クリックしたときに発生します。
構文 | Private Sub expression_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) | |
---|---|---|
キーワード | 省略 | 説明 |
expression | × | クラス モジュールのイベントで宣言されている Worksheet 型のオブジェクトを参照する変数です。 |
Target | × | 必ず指定します。右クリックしたとき、マウス ポインタに最も近いセルが渡されます。 |
Cancel | ● | 省略可能です。イベントが発生すると、False が渡されます。イベント プロシージャでこの引数に True を設定すると、プロシージャが終了しても既定の右クリックの操作は実行されません。 |
他のワークシート イベントと同様に、ポインタが図形またはコマンド バー (ツールバーまたはメニュー バー) の上にある場合、右クリックしてもこのイベントは発生しません。次の使用例は、セル範囲 B1:B10 のショートカット メニューに対し、新しいメニュー項目を追加します。
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, _
Cancel As Boolean)
Dim icbc As Object
For Each icbc In Application.CommandBars("セル範囲").Controls
If icbc.Tag = "brccm" Then icbc.Delete
Next icbc
If Not Application.Intersect(Target, Range("b1:b10")) _
Is Nothing Then
With Application.CommandBars("セル範囲").Controls _
.Add(Type:=msoControlButton, before:=6, _
temporary:=True)
.Caption = "新しいメニュー項目"
.OnAction = "マクロ1"
.Tag = "brccm"
End With
End If
End Sub
立山 秀利
プログラミング初心者でもわかりやすいExcel VBAの入門書です。本書では、他言語でのプログラミング経験がない初心者でもVBAプログラミングが理解できるよう、重要な機能に焦点をしぼって、VBAのポイントとなるオブジェクトや演算子、条件分岐、ループ、変数、関数などにをやさしく解説しました。「計算ドリル」「販売管理」といったアプリケーションを作りながら、楽しくVBAを学べます。