Code dans module/WorkBook ou Sheet

lio

XLDnaute Occasionnel
Bonsoir le forum,

Tout d'abord, pardon pour le titre: pas très parlant pour faire des recherches ensuite...

Voila mon problème. J'ai une 10 ène de feuille dans un classeur. Sur chacune d'elle, j'ai placé un bouton de commande appelé 'CmdAide'. Lorsque je click sur ce bouton, un Usf nommé ' Aide' doit apparaître.

Je me dis qu'en appelant de la manière la macro commande, je n'aurai pas besoin d'écrire dans chaque feuille:

Private Sub CmdAide_Click()
Aide.Show
End Sub

J'ai donc essayé avec celui ci:
Public Sub CmdAide_Click()
Aide.Show
End Sub

Je l'ai placé dans WorkBook sans réussite. Idem dans un module.

Merci pour vos explications et bonne soirée.
 

Jacques87

XLDnaute Accro
Bonjour Lio

La solution la plus simple serait d'ajouter ce bouton dans la barre de menu d'Excel
Pour cela :
dans le Menu
1) Outils
2)Personaliser ...
3)Commandes
4) Dans Catégories : Macros
5) dans Commandes : Elément de Menu personalisé
cliquer sur cette dernière option et la déplacer dans la barre de Menu
6) fermer la petite fenêtre
ensuite
sur le nouveau bouton, clic gauche : une fenêtre s'ouvre, elle permet de lier une macro existante à ce bouton.
Evidemment la macro doit être construite au préalable, cette macro étant celle que tu as utilisée

Bonne soirée
 

lio

XLDnaute Occasionnel
Bonjour Jacques, le forum,

Ta solution est intéressante. Cependant à cha que fois que j'ouvre un autre fichier Excel, j'ai mon bouton. Je pense que cette solution est bonne lorsque qu'on utilise réqulièrement des macros dans ses fichiers .xls( d'analyse ou autre).

Je te remercie quand même beaucoup et je pense que je vais repartir à 'l'anciènne'.

Merci encore et bonne soirée.
 

Jacques87

XLDnaute Accro
Mais bondieu c'est bien sur

J'ai oublié de te dire que tu peux supprimer ce bouton grace à une petite macro que tu places dans
'This WorkBook'
'Private Sub WorkBook_BeforeClose()'
la seule chose c'est que de tête je ne sais plus quel est le code, je chercherai et te l'enverrai plus tard si cela t'intéresse

Bonne soirée
 

Jacques87

XLDnaute Accro
Bonsoir lio

Après de grosses difficultés, j'ai construit cette procédure qui supprime le bouton 'Eléments du menu personnalisé' de la barre d'outils 'Standard' que je t'avais proposé de construire pour règler ton problème.
J'ai eu de grosses difficultés car
1) j'ai du reconstruire ligne par ligne cette procédure
2) je me suis fait piègé car le nom de ce bouton réellement est 'E(majuscule avec un accent)&(caractère signalant quelle est la lettre à utilisée avec CTRL pour un racourci)léments de menu personnalisé'
ces deux petites 'vacheries' m'ont fait souffrir, mais le principal c'est d'arriver au but et que ça marche

Procédure à conserver derrière les fagots, car réutilisable avec d'autres boutons.

Il te suffit maintenant de mettre cette procédure dans 'Thisworbook' 'Private Sub Workbook_Open()'
Evidemment je te conseille de supprimer les msgBox pour ne pas être embété avec les boites de dialogue

Voila, je suis content, j'ai bien travaillé

Cordialement et à la prochaine

Message édité par: Jacques87, à: 14/01/2006 23:51
 

Jacques87

XLDnaute Accro
Bonsoir lio

Après de grosses difficultés, j'ai construit cette procédure qui supprime le bouton 'Eléments du menu personnalisé' de la barre d'outils 'Standard' que je t'avais proposé de construire pour règler ton problème.
J'ai eu de grosses difficultés car
1) j'ai du reconstruire ligne par ligne cette procédure
2) je me suis fait piègé car le nom de ce bouton est réellement 'E(majuscule avec un accent)&(caractère signalant quelle est la lettre à utiliser avec CTRL pour un racourci)léments de menu personnalisé'
ces deux petites 'vacheries' m'ont fait souffrir, mais le principal c'est d'arriver au but et que ça marche

Procédure à conserver derrière les fagots, car réutilisable avec d'autres boutons.

Il te suffit maintenant de mettre cette procédure dans 'Thisworbook' 'Private Sub Workbook_Open()'
Evidemment je te conseille de supprimer les msgBox pour ne pas être embété avec les boites de dialogue

Voila, je suis content, j'ai trouvé la solution

Cordialement et à la prochaine

Message édité par: Jacques87, à: 14/01/2006 23:51 [file name=Supprimer.zip size=10261]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Supprimer.zip[/file]

Message édité par: Jacques87, à: 14/01/2006 23:58
 

lio

XLDnaute Occasionnel
Bonjour Jacques,

Merci tout d'abord pour cette réponse.

J'ai placé ton code dans ThisWorkbook Open comme précisé mais j'ai simplement un msg avec écrit 'barre trouvé'.

Pour ma part j'aurai eu tendance a placé ce code dans ThisWorkbook before Close puisque il est destiné à supprimer le bouton perso du classeur en question. Mais ça ne marche pas, j'ai la même msg que tout à l'heure et si je pars sur un autre classeur j'ai toujours mon bouton perso ?...

Peut être que je m'y prends mal ?

Merci encore.
 

Jacques87

XLDnaute Accro
Bonsoir lio

Pour ma part j'aurai eu tendance a placé ce code dans ThisWorkbook before Close puisque il est
destiné à supprimer le bouton perso du classeur en question

c'est évident, hier soir, ou plutot cette nuit j'étais trop fatigué pour réfléchir correctement (lol)

Maintenant, ce code recherche le bouon 'Eléments de menu personalisé' situé dans la barre 'Standard'. Donc faut-il que ce bouton existe d'une part et que d'autre part il soit dans la bonne barre, sinon il ne passera rien

Hier soir j'ai également fait un programme qui lit toutes les barres ouvertes (ou visibles) et donne le nom des boutons qu'elles contiennent, en pécisant leur ordre parmi l'ensemble des boutons de la barre
exemple : barre 'Standard' 22/24 bouton 'Eléments du Menu personalisé' signifie que le bouton considéré est le 22 ème bouton parmi 24 de la barre considérée

Utilises le pour voir si ton bouton est bien là où il faut

A+
 

lio

XLDnaute Occasionnel
Bonsoir Jacques,

Merci pour cette réponse.Cependant j'ai bien un bouton dans la barre Standard et rien ne se passe.(sauf msg)

On est bien d'accord: le but de cette macro est d'effacer ce bouton perso ou du moins de le rendre inactif lors de la fermeture de ce fichier.

Cordialement Lio.
 

Jacques87

XLDnaute Accro
Mon fichier n'était pas passé [file name=Nom.zip size=9330]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Nom.zip[/file]
utilises le pour vérifier si le bouton est bien dans 'Standard' et s'appelle bien'E(avecaccent)élément de menu personnalisé'
Si c'est le cas l'autre fichier te permettra de le supprimer à sa fermeture

Message édité par: Jacques87, à: 15/01/2006 19:51

Message édité par: Jacques87, à: 15/01/2006 19:52
 

lio

XLDnaute Occasionnel
Bonjour Jacques,

Grace à ton programme je m'apperçois que mon bouton s'appelle: 'Bouton personnalisé' (et il est bien dans la barre 'Standard'. J'ai donc changé un peu ta macro:
If nom = 'Bouton personnalisé' Then ...

Mais toujours rien ? Faut il remplacer autre chose au code ?

Merci et bonne semaine.
 

Jacques87

XLDnaute Accro
Bonjour

n'y aurait-il pas un caractère supplémentaire du genre '&' qui traînerait dans le nom. Ce caractère est le caractère de soulignement de la lettre qui signale qu'elle est la touche 'raccourci'
Il faut que tu l'inscrives dans
If nom = 'Bouton personnalisé' Then ...


Boncourage et A+
 

Discussions similaires

M
  • Résolu(e)
Microsoft 365 Userform Excel VBA
Réponses
12
Affichages
1 K
Méli_
M

Statistiques des forums

Discussions
312 485
Messages
2 088 817
Membres
103 971
dernier inscrit
abdazee