应用于 Worksheet 对象的 Activate 方法。
当用鼠标右键单击某工作表时产生此事件,此事件先于默认的右键单击操作。
Private Sub expression_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
expression 引用在类模块中带有事件声明的 Worksheet 类型对象的变量。
Target 必需。右键单击发生时最靠近鼠标指针的单元格。
Cancel 可选。当事件发生时为 False。如果该事件过程将本参数设为 True,则该过程执行结束之后不进行默认的右键单击操作。
当用鼠标右键单击一个嵌入图表时发生此事件,此事件先于默认的右键单击操作。
Private Sub expression_BeforeRightClick(Cancel As Boolean)
expression 引用在类模块中带有事件声明的 Chart 类型对象的变量。
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("cell").Controls
If icbc.Tag = "brccm" Then icbc.Delete
Next icbc
If Not Application.Intersect(Target, Range("b1:b10")) _
Is Nothing Then
With Application.CommandBars("cell").Controls _
.Add(Type:=msoControlButton, before:=6, _
temporary:=True)
.Caption = "New Context Menu Item"
.OnAction = "MyMacro"
.Tag = "brccm"
End With
End If
End Sub