Personnaliser la barre d'outils accès rapide

matthieu2701

XLDnaute Occasionnel
Bonjour,

J'aimerais ajouter à ma barre d'outils accès rapide une couleur de remplissage.

Je sais ajouter l'onglet "couleur de remplissage" mais je souhaite avoir que la couleur que je souhaite et qu'en cliquant dessus ma cellule se colore.

Ai-je étais assez clair ?

Merci pour votre aide.
 

bof

XLDnaute Occasionnel
Re : Personnaliser la barre d'outils accès rapide

Bonjour,
Couleur de remplissage ne permet pas de fixer une couleur particulière.
Aucune commande prédéfinie ne permet de fixer une seule couleur : Tu dois donc créer toi même la macro qui fera le boulot et la mettre dans le ruban.
Pour faire cela tu dois avoir déjà créé un classeur de macro personnelle : perso.xlam
Est-ce le cas ?

Si tu l'as pas encore fait, ouvre un nouveau classeur vierge.
Enregistre une macro qui colore ta cellule avec la couleur qui te convient, puis arrête d'enregistrer.
Va dans VBA : on va optimiser cette macro.

En principe du as du obtenir une macro de ce genre (avec quelques variantes pour Excel 2007)
Code:
Sub Macro1()
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 6684927
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
End Sub

La seule chose qui nous interesse est le N° de la couleur que tu as choisie ici c'est 6684927 (pour la couleur violet)
Nous allons donc modifier la macro pour obtenir uniquement ce résultat.
Ceci devrait être suffisant :
Code:
Sub violet()
Selection.Interior.Color = 6684927
End Sub
Au passage on a renommé la macro avec un nom évocateur.
On pourrait faire de même avec d'autres couleurs
Code:
Sub rouge()
Selection.Interior.Color = 255
End Sub
Sub bleu()
Selection.Interior.Color = 16711680
End Sub
Sub vert()
Selection.Interior.Color = 65280
End Sub

Ceci étant terminé à partir de VBA on va enregistrer notre travail. On peut le faire depuis VBA ou depuis Excel :
Enregistrer sous : perso puis (ligne en dessous Type) choisir Macro Complémentaire Excel (*.xlam)
C'est terminé. On quitte Excel.

On va revenir à Excel dans un nouveau classeur vierge.
Dans l'onglet Développeur cliquer sur l'onglet Complément Tu dois y voir ton "perso" dans la liste. S'il n'est pas coché, tu dois le cocher pour rendre ta macro disponible afin de l'inscrire dans la barre d'outils accès rapide.
Une fois coché, tu cliques sur Ok. Ta macro est maintenant prête à être ajoutée à la barre d'accès rapide.
Aller dans le menu Personnaliser la barre d'outils accès rapide.
Tout en haut tu as une première petite zone de liste : Choisir les commandes dans les catégories suivantes.
au lieu de Commandes courantes choisir Macros
Tu dois maintenant voir en dessous la ou les macros enregistrées dans ton Perso.xlam.
Un double clic pour chacune des couleurs si tu as copié les 4 que je t'ai fournies.
Tu dois maintenant voir tes macros dans le tableau de droite.
Nous allons maintenant les sélectionner une par une pour leur donner une icone plus appropriée.
Après avoir sélectionné la première macro cliquer en bas sur Modifier : Une boite de dialogue te propose quelques icones : un simple carré bleu, rouge, vert ou violet fera parfaitement l'affaire. Quand toutes tes macros ont une icone convenable tu cliques en bas sur Ok et tu retrouveras tes boutons sur la barre d'outils en haut.
Nota : Si les icones ne sont pas d'une couleur des plus convaincantes une info-bulle rappelle le nom de la macro au survol du bouton.
YAPUKA cliquer dessus pour préparer un sapin de Noël du plus bel effet...

BOPerso.jpg


A+
 

matthieu2701

XLDnaute Occasionnel
Re : Personnaliser la barre d'outils accès rapide

Merci beaucoup pour ton explication. Par contre, lorsque je rempli ma cellule je ne peux plus revenir en arrière.

Je ne peux plus annuler mon remplissage. Si je me trompe, je souhaite pouvoir annuler mon remplissage.
 

bof

XLDnaute Occasionnel
Re : Personnaliser la barre d'outils accès rapide

Bonsoir,
Il n'est pas possible d'annuler l'action d'une macro. A moins de le prévoir expressément. C'est à dire d'enregistrer l'état précédent, et de créer une macro capable de revenir à l'état précédent. En pratique cela ne se fait jamais car à l'inverse de la fonction annuler, par macro il n'est pas possible de remonter à plusieurs étapes en arrière. Il faut donc agir à bon escient ou quitter sans enregistrer.
A+
 

Discussions similaires

Statistiques des forums

Discussions
314 781
Messages
2 112 909
Membres
111 696
dernier inscrit
dam7536