Commandbars ne s'effaçant pas

  • Initiateur de la discussion Initiateur de la discussion Pascal
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

Pascal

Guest
Bonjour à tout le forum, 🙂

Je viens de diffuser dans mon service une macro qui ajoute une commandbars dans excel. Sur quatre postes il y en a deux pour qui la commandbars ne s’efface pas lors de la sortie d’Excel alors que ça marche parfaitement sur les autres postes.
Les utilisateurs se retrouvent donc avec autant de nouveau menu que d’ouverture d’excel.

Pourriez vous me dire ce qui ne va pas dans le code que vous trouverez ci-dessous ??

Merci par avance et bonne journée à tous
Pascal :S



Private Sub Workbook_Open()
Call Ajout_Menu_Perso
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Supp_Menu_Perso
End Sub



Sub Supp_Menu_Perso()
CommandBars(1).Controls('Lawson').Delete
End Sub
 
Bonjour Pascal,


C'est un problème de syntaxe :

Deux possibilités :

Sub Supp_Menu_Perso()

CommandBars('Lawson').Delete

Application.CommandBars('Lawson').Delete

End Sub


Cordialement

CBernardT

Message édité par: CBernardT, à: 31/03/2005 11:47
 
Salut Pascal, CBernardT,

Autre possibilité, vérifier au lancement de la macro que la barre n'existe pas déjà 😉

exemple
Code:
Dim x As CommandBar

    For Each x In CommandBars
        If x.Name = 'MonNomDeBarre' Then
            'on ne crée pas la barre...ou on la supprime
        End If
    Next

Bon courage
 
😱

Merci à tous les deux pour vos réponses.

Cependant, ni l’une ni l’autre ne fonctionnent.
Peut-être je ne les incorporent pas au bon endroit. Le problème est que sur mon poste la macro fonctionne parfaitement.
Je vous joins le code complet pour mieux voir.

Merci encore à tous les deux et la question reste ouverte. Bonne fin d'après midi

Code dans Thisworkbook :

Private Sub Workbook_Open()
Call Ajout_Menu_Perso
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Supp_Menu_Perso
End Sub

Code dans le Module :

Sub Ajout_Menu_Perso()


With CommandBars(1).Controls.Add(msoControlPopup)
.Caption = 'La&wson'

With .Controls.Add(msoControlButton)
.Caption = 'AS &213'
.FaceId = 59
.BeginGroup = False
.OnAction = 'as213_mise_en_page'
End With

With .Controls.Add(msoControlButton)
.Caption = 'Tic&kets resto.'
.FaceId = 2101
.BeginGroup = False
.OnAction = 'Tickets_restaurant'
End With


End With
End Sub

Sub Supp_Menu_Perso()
CommandBars(1).Controls('Lawson').Delete
End Sub
 
ça marche !!:woohoo:

Effectivement myDearFriend la Syntaxe n'était pas bonne.
Du coup, j'ai supprimé la Macro Supp_Menu_Perso().

Merci à tous les trois pour votre patience et votre aide.

Bonne fin d'après midi
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
2 K
Retour