ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Add menu item to right click (https://www.excelbanter.com/excel-programming/367355-add-menu-item-right-click.html)

dev

Add menu item to right click
 
How can I add my own menu item to the right click context menu.

When user clicks on a cell and right clicks; I want my own menu item to be
seen - so that I can run a macro, when user clicks that menu and also wants
to disable that menu for some cells...

Any help is really appreciated!!

Thanks in advance!!

Leith Ross[_662_]

Add menu item to right click
 

Hello Dev,

Copy this code and paste it into a new VBA Module in your Workbook. Run
it once to add your menu item to the Right-Click menu. Besure to change
MyMacro and MyMenuCaption to what you want.


Code:
--------------------

Public Sub AddToContextMenu()

Dim C
Dim cmdNew As CommandBarButton
Dim MyMenuCaption As String

MyMenuCaption = "Call MyMacro" '<<<< Change this

'Don't add the Menu if it exists.
For Each C In Excel.CommandBars("cell").Controls
If C.Caption = MyMenuCaption Then
Exit Sub
End If
Next C

Set cmdNew = Excel.CommandBars("cell").Controls.Add
With cmdNew
.Caption = MyMenuCaption
.OnAction = "MyMacro name" '<<< Insert the name of your Macro
.BeginGroup = True
End With

End Sub

Public Sub RemoveFromContextMenu()

Dim MyMenuCaption As String

On Error Resume Next
MyMenuCaption = "Call MyMacro" '<<<< Change this
With CommandBars("cell").Controls(MyMenuCaption)
.BeginGroup = False
.Delete
End With

End Sub

--------------------


Sincerely,
Leith Ross


--
Leith Ross
------------------------------------------------------------------------
Leith Ross's Profile: http://www.excelforum.com/member.php...o&userid=18465
View this thread: http://www.excelforum.com/showthread...hreadid=561910


dev

Add menu item to right click
 
Thanks Leith for your reply. This worked!!

"Leith Ross" wrote:


Hello Dev,

Copy this code and paste it into a new VBA Module in your Workbook. Run
it once to add your menu item to the Right-Click menu. Besure to change
MyMacro and MyMenuCaption to what you want.


Code:
--------------------

Public Sub AddToContextMenu()

Dim C
Dim cmdNew As CommandBarButton
Dim MyMenuCaption As String

MyMenuCaption = "Call MyMacro" '<<<< Change this

'Don't add the Menu if it exists.
For Each C In Excel.CommandBars("cell").Controls
If C.Caption = MyMenuCaption Then
Exit Sub
End If
Next C

Set cmdNew = Excel.CommandBars("cell").Controls.Add
With cmdNew
.Caption = MyMenuCaption
.OnAction = "MyMacro name" '<<< Insert the name of your Macro
.BeginGroup = True
End With

End Sub

Public Sub RemoveFromContextMenu()

Dim MyMenuCaption As String

On Error Resume Next
MyMenuCaption = "Call MyMacro" '<<<< Change this
With CommandBars("cell").Controls(MyMenuCaption)
.BeginGroup = False
.Delete
End With

End Sub

--------------------


Sincerely,
Leith Ross


--
Leith Ross
------------------------------------------------------------------------
Leith Ross's Profile: http://www.excelforum.com/member.php...o&userid=18465
View this thread: http://www.excelforum.com/showthread...hreadid=561910




All times are GMT +1. The time now is 04:27 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com