Bouton macro

mcj1997

XLDnaute Accro
Bonjour,

Je souhaite ajouter des boutons à ma barre d'outils pour commander des macros, je n'en ai trouvé qu'un auquel j'ai pu affecter une macro, est-il possible d'en rajouter d'autres ?
Aussi, je cherche à personnaliser le message qui s'affiche en passant dessus le bouton.

Merci d'avance,:)
 

ya_v_ka

XLDnaute Impliqué
Re : Bouton macro

Hello

Tu peux, en passant par personnaliser... modifier, editer, changer l'image du bouton, changer son nom aussi en clic droit sur le bouton voulu...

Je répète:
1. inserer ton bouton x
2. clic droit barre d'outils et choisir personnaliser
3. clic droit bouton x et modifier nom ou image

Ya'v
 

mcj1997

XLDnaute Accro
Re : Bouton macro

Merci, c'est impeccable, toutefois pour optimiser, est-il possible d'avoir ces nouveaux boutons commandants des macros uniquement dans le fichier voulu afin qu'ils n'apparaissent pas dans la barre d'outils à chaque ouverture d'excel ?

merci d'avance,
 

Dull

XLDnaute Barbatruc
Re : Bouton macro

Salut mcj1997, ya_v_ka :), le Forum

Sur une idée de l'excellent MichelXLD

Code:
Private Sub Workbook_Open() 'By MichelXLD
'http://www.excel-downloads.com/forum/76557-barre-doutil-perso.html
    Dim CmdBar As CommandBar
    Dim Bouton As CommandBarButton
    
    Set CmdBar = Application.CommandBars _
        .Add(Name:="MaBarrePerso", Position:=msoBarTop, _
        Temporary:=True)
    
    Set Bouton = CmdBar.Controls.Add(Type:=msoControlButton)
    With Bouton
        .FaceId = 134
        .OnAction = "TaMacro"[COLOR=Green] ' TaMacro représente ton Sub Macro_1() par exemple[/COLOR]
    End With
    
    CmdBar.Visible = True
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    Application.CommandBars("MaBarrePerso").Delete
End Sub
Codes à mettre dans ton ThisWorkbook

Bonne Journée
 

Dull

XLDnaute Barbatruc
Re : Bouton macro

Salut mcj1997, Le Forum

Arf... désolé de n'avoir pas été assez préçis

Je te joint le Fichier
Pour voir le code
Alt + F11 ou click droit sur un Onglet et "Voir le Code"
Dans la fenêtre de Gauche

mcj1997.jpg

Double Click sur le Module ThisWorkbook et colle y le Code donné précédemment.
Enregistre le Fichier et Ferme le

A la Prochaine réouverture de ce Fichier tu auras ton bouton Actif et Seulement pour ce Fichier

mcj1997 2.jpg

Si tu as des difficultés n'hésite pas a reposter

Voir le Fichier Ici

Bonne Journée
 
Dernière édition:

mcj1997

XLDnaute Accro
Re : Bouton macro

Ok, bien compris, très fort,
toutefois j'ai créé sur ma barre d'outils 8 nouveaux boutons, il y a donc 8 macros, faut-il faire 8 fois cette manip ou sur la ligne (onaction =) est-il possible de mettre les 8 noms des macros et ainsi pouvoir supprimer les huits boutons sur la barre d'outils, remplacés par le bouton en forme de flêche, j'aurai ainsi huit flêches pour commander mes macros et pour les différencier je pourrai changer les flêches par d'autres boutons.

Autrement pour que cela soit plus simple n'est-il pas possible de rajouter des lignes dans mes macros pour signifier que les boutons ne doivent apparaitre que dans ce fichier ?

Merci d'avance,
 

Dull

XLDnaute Barbatruc
Re : Bouton macro

Re

Si j'ai toujours bien compris

Code:
Private Sub Workbook_Open() 'By MichelXLD
'http://www.excel-downloads.com/forum/76557-barre-doutil-perso.html
    Dim CmdBar As CommandBar
    Dim Bouton As CommandBarButton
    
    Set CmdBar = Application.CommandBars _
        .Add(Name:="MaBarrePerso", Position:=msoBarTop, _
        Temporary:=True)
    
[COLOR=Red][B]    Set Bouton = CmdBar.Controls.Add(Type:=msoControlButton)
    With Bouton
        .FaceId = 134
        .OnAction = "TaMacro" ' TaMacro représente ton Sub Macro_1() par exemple
        .TooltipText = "MaDescription" [/B][/COLOR][COLOR=Green]' Je l'ai ajouté (au survol de la Souris _sur le Bouton) By MyDearFriend!
[/COLOR][COLOR=Red][B]    End With[/B][/COLOR] 
[COLOR=Navy][B]    Set Bouton = CmdBar.Controls.Add(Type:=msoControlButton)
    With Bouton
        .FaceId = 135
        .OnAction = "TaMacro2" ' TaMacro2 représente ton Sub Macro_2()
        .TooltipText = "MaDescription2" [/B][/COLOR][COLOR=Navy][B]
    End With  
[/B][COLOR=Green]'Ainsi de Suite ETC...   [/COLOR][/COLOR]
 End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    Application.CommandBars
("MaBarrePerso").Delete
End Sub
Tu aura autant de Boutons dans ta "MaBarrePerso" que de Set Bouton =...

Je joint un Lien qui te permettra de retrouver les FaceID et leur Code

Autrement pour que cela soit plus simple n'est-il pas possible de rajouter des lignes dans mes macros pour signifier que les boutons ne doivent apparaitre que dans ce fichier ?
Heu... Les boutons de CE FICHIER ne sont visibles que dans CE FICHIER Grace au
Code:
[B]Private Sub Workbook_BeforeClose(Cancel As Boolean)[/B]
On peut mettre tes 8 macros Sur 1 seul Bouton encore faut-il voir tes Macros

Bonne Journée
 
Dernière édition:

mcj1997

XLDnaute Accro
Re : Bouton macro

Je ne peux pas faire un seul bouton pour mes 8 macros car les 8 macros sont différentes,

Rappel : sur ma barre d'outil, j'ai créé un bouton rouge pour colorer les cellules en rouge = une macro ; j'ai créé un bouton vert pour colorer les cellules en vert = une deuxième macro ; j'ai créé un bouton blanc pour effacer les couleurs des cellules = une troisième macro et ainsi de suite jusqu'à 8 boutons.... (en fait j'ai affecté une macro à chaque nouveau bouton.

Sur vos conseils, cela fonctionne parfaitement, toutefois je souhaite faire mieux en ne faisant apparaitre les boutons que j'ai créé que lors de l'ouverture de mon fichier.

Merci d'avance,
 

ya_v_ka

XLDnaute Impliqué
Re : Bouton macro

Hello

Je vois que tout ça avance pas mal, mais il me vient une question : ton fichier contient il plusieurs feuilles ? car sinon il y a peut-être moyen de faire plus simple...
ou alors encore plus speace... avec un ti rajout dans le menu contextuel du clic droit... peut-être plus rapide ?

A part ça si le code est bien mis dans "open" et "close" il n'est actif QUE pour ce fichier...

Ya'v
 

mcj1997

XLDnaute Accro
Re : Bouton macro

Bonsoir,

Effectivement cela avance bien, pour répondre à la question il y a plusieurs feuilles dans mon feuille, il s'agit d'un planning donc 12 feuilles (une par mois) et mon seul soucis qui persiste est bien de faire apparaitre les boutons (raccourcis de macros) dans la barre d'outils uniquement dans ce fichier.

J'ai peut être trouvé une solution mais qui n'est pas la plus simple, en effet si l'on décoche révision dans la barre d'outils les boutons rajoutés disparaissent.

Merci d'avance,
 

ya_v_ka

XLDnaute Impliqué
Re : Bouton macro

Salut

Je ne comprends toujours pas ton soucis, le code et la technique donnés par Dull créent la barre d'outils à l'ouverture du fichier et l'effacent à la sortie... donc elle n'existe que sur ce fichier...

Ya'v
 

mcj1997

XLDnaute Accro
Re : Bouton macro

Bonjour,

Lorsque je rentre ce code, j'ai un message d'erreur "erreur de compilation - utilisation incorrecte de la propriété" et la ligne : application.CommandBars ressort en erreur ainsi que ("MaBarrePerso"). Delete

Merci d'avance,
 

Dull

XLDnaute Barbatruc
Re : Bouton macro

Salut mcj1997, ya_v_ka, le Forum

As tu copié et collé le code que je t'ai donner ou as-tu recopié le code?

dans le
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    Application.CommandBars("MaBarrePerso").Delete [B][COLOR=Green]'Sur une seule ligne[/COLOR][/B]
End Sub
sinon l'idée de ya_v_ka est judicieuse regarde ce Lien supprimé et le fichier de JMPS s'il peut te donner des idées (puisque tu parle de couleur)

Ouvre le Fichier et fait un click droit
le menu contextuel n'est valable que pour le fichier
de plus ce fichier est facilement paramétrable

Bonne Journée
 
Dernière édition:

mcj1997

XLDnaute Accro
Re : Bouton macro

Bonjour,

1) j'ai fait copier, coller, est-ce pour cela que j'ai ce message d'erreur,
2) jai consulter le lien, c'est effectivement bien, mais j'ai plusieurs couleurs dans mon programme, je sais que le rouge c'est en maladie, le vert c'est l'accueil ......
3) aussi, c'est autre chose mais je me suis rendu compte que le fichier ou j'ai personnalisé la barre d'outils avec des rajouts de boutons pour commander mes macros, lorsque je l'ouvre sur un autre ordinateur, je n'ai plus ces boutons sur la barre d'outils, comment faire ?

merci pour l'aide
 

Discussions similaires

Statistiques des forums

Discussions
312 503
Messages
2 089 055
Membres
104 013
dernier inscrit
VELONDAHY Mickaël