Bonsoir à tous

Le sujet pour lequel j'ai besoin d'aide concerne la gestion des menus personnalisés dans le cas où deux classeurs identiques sont ouverts simultanément.

J'ai créé un menu personnalisé que j'appelle dans le Workbook_Open

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Private Sub Workbook_Open()
       Call Menu_CopieValeurs  
End Sub
Dans un module standard, j'ai mis la procédure de création du menu et en m'aidant de ce que j'ai trouvé dans un forum, je fais en sorte que lorsque deux classeurs identiques sont ouverts, un seul menu s'affiche :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub Menu_CopieValeurs
Dim bMarqueur As Boolean
Dim iNbMenus As Integer              
Dim iItem As Integer                    
Dim menuPrin As CommandBarPopup
Dim menuItem As CommandBarControl 
 
    iNbMenus = Application.CommandBars.ActiveMenuBar.Controls.Count
    For iItem = 1 To iNbMenus
        If Application.CommandBars.ActiveMenuBar.Controls.Item(iItem).Caption = "Copie valeurs des cubes" Then
            bMarqueur = True
        End If
    Next iItem
 
    'CREATION DU MENU PRINCIPAL
    If bMarqueur = False Then
        Set menuPrin = _
            Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:= _
                msoControlPopup, temporary:=True)
        menuPrin.Caption = "Copie valeurs "
        menuPrin.BeginGroup = True
    End If
End Sub
En revanche, lorsqu'on ferme un seul des deux classeurs, le menu disparaît, y compris sur le classeur qui reste ouvert.

Comment faire pour que le menu reste sur le classeur ouvert.

Merci d'avance à tous ceux qui pourraient trouver une solution.
(au bureau, je travaille sur Excel 2003)