在工作表文本框中右键单击

当用户在工作表文本框中右键单击而不是ActiveX时,我希望能够捕获右键单击事件。

我知道它可以轻松完成用户自定义的文本框,这不是我所追求的。 在工作表事件Worksheet_BeforeRightClick我有以下内容:

 Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) mRightClick.RightClickOnMoMList rngTarget:=Target, boolCancel:=Cancel End Sub 

但是,当我右键单击文本框(但同一工作表的单元格不起作用)时,它甚至不会input它。 我怀疑这是由于Target参数是一个范围。

有没有办法让事件陷阱右键单击形状像文本框?

我刚刚做了这个:
– 打开Excel并进入devise模式
– 将一个文本框添加到工作表
– 双击文本框,它把我带到该控件的更改事件
– 我select了MouseUp事件

你之后是右键Button = 2(左键是1)。

所以…

 Private Sub TextBox1_MouseUp(ByVal Button As Integer, _ ByVal Shift As Integer, _ ByVal X As Single, ByVal Y As Single) If Button = 1 Then MsgBox "Left-click" ElseIf Button = 2 Then MsgBox "Right-click" End If End Sub