Prevent "Add-Ins" from appearing in Ribbon

X

XP

In XL 2007, I add a program that adds a custom menu item to the shortcut menu
and it works fine. BUT, two things:

1) A menu item in the ribbon called "Add-Ins" appears. How can I delete or
hide this or otherwise prevent it from appearing?

2) In the "Add-Ins" item, the custom shortcut menu item appears 5 times.
Why? [I know this is sort of moot since I want to get rid of "Add-Ins"
anyway, but I'm curious why this happens - at some point I'll probably need
to fix it.]

My code that adds the custom shortcut menu:

In ThisWorkbook module:

Private Sub Workbook_Activate()
Call ShortCutMenuModify
End Sub

Private Sub Workbook_Deactivate()
Call ShortCutMenuReset
End Sub

In a standard code module:

Public Function ShortCutMenuModify()
Dim cbBar As CommandBar
Dim lX As Long
On Error Resume Next
For lX = 1 To Application.CommandBars.Count
If CommandBars(lX).Type = msoBarTypePopup And CommandBars(lX).BuiltIn =
True Then
Set cbBar = Application.CommandBars(lX)
With cbBar
.Controls.Add Type:=msoControlButton, Before:=1
.Controls(1).Caption = "CAFR"
.Controls(1).FaceId = 5828
.Controls(1).OnAction = "RunFOREIGN"
If .Controls.Count > 2 Then .Controls(2).BeginGroup = True
End With
End If
Next lX
On Error GoTo 0
End Function

Public Function ShortCutMenuReset()
Dim cmdBar As CommandBar
Dim lngX As Long
For lngX = 1 To Application.CommandBars.Count
If CommandBars(lngX).Type = msoBarTypePopup And
CommandBars(lngX).BuiltIn = True Then CommandBars(lngX).Reset
Next lngX
End Function

Thanks for any help on this.
 
R

Ron de Bruin

Check out your other thread

I posted this

If I use this two testers the problem is only this menu that create the add-in tab
"PivotChart Menu"

If I check for it no add-ins tab will be created

Do you see the same results ?

Note : From Jon Peltier in a older thread
It appears in those popups that relate to the worksheet
(such as Cell, Row, Column, etc.) but not in those relating to shapes or
charts, and that is where these enhanced popups are most needed.


Sub AddPopup()
Dim cb As CommandBar
Dim ctl As CommandBarButton
Dim I As Integer
For Each cb In Application.CommandBars
If cb.Type = msoBarTypePopup And cb.BuiltIn And cb.Name <> "PivotChart Menu" Then
I = I + 1
cb.Reset
Set ctl = cb.Controls.Add(Type:=msoControlButton)
ctl.Caption = "MyMenu " & cb.Name
ctl.FaceId = 80
ctl.Visible = True
Debug.Print cb.Name
End If
Next
MsgBox I
End Sub

Sub ResetPopup()
Dim cb As CommandBar
Dim ctl As CommandBarButton
Dim I As Integer
For Each cb In Application.CommandBars
If cb.Type = msoBarTypePopup And cb.BuiltIn Then
I = I + 1
cb.Reset
End If
Next
MsgBox I
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top