应用于 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