Excell : Couleur sur bouton
Résolu/Fermé
Juliusus
Messages postés
4
Date d'inscription
mercredi 7 avril 2010
Statut
Membre
Dernière intervention
7 avril 2010
-
7 avril 2010 à 09:27
Juliusus Messages postés 4 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 7 avril 2010 - 7 avril 2010 à 20:44
Juliusus Messages postés 4 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 7 avril 2010 - 7 avril 2010 à 20:44
A voir également:
- Excell : Couleur sur bouton
- Liste déroulante excell - Guide
- Formule excell - Guide
- Excell viewer - Télécharger - Tableur
- Excell 2013 - Télécharger - Tableur
- Somme excell - Guide
7 réponses
chossette9
Messages postés
4239
Date d'inscription
lundi 20 avril 2009
Statut
Contributeur
Dernière intervention
12 septembre 2014
1 308
7 avril 2010 à 09:48
7 avril 2010 à 09:48
Bonjour,
je n'ai pas testé, mais surement qu'en écrivant ceci :
ça fonctionnera mieux.
Mais une petite question : à quoi correspondent les 2 formats que vous avez mis pour les couleurs ?
Cordialement.
je n'ai pas testé, mais surement qu'en écrivant ceci :
Sub Macro1() Dim Nomdubouton As String Nomdubouton=Range("B4").Value Sheets("Section 2").Select ActiveSheet.(Nomdubouton").BackColor = la_couleur End Sub
ça fonctionnera mieux.
Mais une petite question : à quoi correspondent les 2 formats que vous avez mis pour les couleurs ?
Cordialement.
Mike-31
Messages postés
18354
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
1 janvier 2025
5 111
7 avril 2010 à 13:55
7 avril 2010 à 13:55
Salut,
Je ne comprends pas très bien ce que tu veux faire, changer la couleur d'un bouton qui à été activé, mais si tu actives un autre bouton le premier doit il reprendre sa couleur initiale .
Et tes boutons sont ils des CommandButton réalisés avec la barre d'outils contrôle ou avec la barre formulaire !
Je ne comprends pas très bien ce que tu veux faire, changer la couleur d'un bouton qui à été activé, mais si tu actives un autre bouton le premier doit il reprendre sa couleur initiale .
Et tes boutons sont ils des CommandButton réalisés avec la barre d'outils contrôle ou avec la barre formulaire !
Juliusus
Messages postés
4
Date d'inscription
mercredi 7 avril 2010
Statut
Membre
Dernière intervention
7 avril 2010
7 avril 2010 à 14:08
7 avril 2010 à 14:08
salut,
ces boutons sont des CommandButon. En gros, sur une feuille, j'ai une trentaine de boutons qui m'envoie sur une feuille excel pour faire la gérance de machines.
En fonction de l'état de ces machines, les boutons sur la feuille principale sont de couleurs différentes (vert, rouge, gris ou blanc).
Actuellement je gère cela en vba, mais le code prends 4 pages A4 avec la méthode des "if then" ... donc je voudrias réduire cela.
Chaque bouton est indépendant et aucun n'interréagi avec un autre.
C'est " ActiveSheet.Nomdubouton.BackColor = &H8000000F " qui me pose problème. VBA ne veut pas prendre en compte la variable Nomdubouton.
> si je mets le nom rèel du bouton, ca marche
euhhh pas trop long l'explication ? lol
a+ Horsy
ces boutons sont des CommandButon. En gros, sur une feuille, j'ai une trentaine de boutons qui m'envoie sur une feuille excel pour faire la gérance de machines.
En fonction de l'état de ces machines, les boutons sur la feuille principale sont de couleurs différentes (vert, rouge, gris ou blanc).
Actuellement je gère cela en vba, mais le code prends 4 pages A4 avec la méthode des "if then" ... donc je voudrias réduire cela.
Chaque bouton est indépendant et aucun n'interréagi avec un autre.
C'est " ActiveSheet.Nomdubouton.BackColor = &H8000000F " qui me pose problème. VBA ne veut pas prendre en compte la variable Nomdubouton.
> si je mets le nom rèel du bouton, ca marche
euhhh pas trop long l'explication ? lol
a+ Horsy
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
644
7 avril 2010 à 15:48
7 avril 2010 à 15:48
Bonjour Juliusus et Mike-31
Selon moi la syntaxe est un peu plus délicate cela doit être celle ci :
ActiveSheet.OLEObjects(Nomdubouton).Object.BackColor = &H8000000F
A+
Selon moi la syntaxe est un peu plus délicate cela doit être celle ci :
ActiveSheet.OLEObjects(Nomdubouton).Object.BackColor = &H8000000F
A+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mike-31
Messages postés
18354
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
1 janvier 2025
5 111
7 avril 2010 à 16:05
7 avril 2010 à 16:05
Re,
De renommer le bouton est délicat, je te conseille garder le nom par exemple pour le bouton 1 (Name CommandButton1) ce qui ne t'empêcher pas de changer le titre sur le bouton (Caption)
Private Sub CommandButton1_Click()
'le code est pour rouge
CommandButton1.BackColor = &HFF&
'éventuellement tu peux écrire
ActiveSheet.CommandButton1.BackColor = &HFF&
'ou pour bleu
ActiveSheet.CommandButton1.BackColor = &HFF0000
End Sub
De renommer le bouton est délicat, je te conseille garder le nom par exemple pour le bouton 1 (Name CommandButton1) ce qui ne t'empêcher pas de changer le titre sur le bouton (Caption)
Private Sub CommandButton1_Click()
'le code est pour rouge
CommandButton1.BackColor = &HFF&
'éventuellement tu peux écrire
ActiveSheet.CommandButton1.BackColor = &HFF&
'ou pour bleu
ActiveSheet.CommandButton1.BackColor = &HFF0000
End Sub
Merci Pilas31
c'est toi qui a la bonne réponse, je ne connaissais pas du tout le truc du OLEObjets (vais me renseigner illico la dessus
vais pouvoir virer des lignes de code à tour de bras là .. lol
et merci aussi à ceux qui mon répondu
à+ Horsy
c'est toi qui a la bonne réponse, je ne connaissais pas du tout le truc du OLEObjets (vais me renseigner illico la dessus
vais pouvoir virer des lignes de code à tour de bras là .. lol
et merci aussi à ceux qui mon répondu
à+ Horsy
Juliusus
Messages postés
4
Date d'inscription
mercredi 7 avril 2010
Statut
Membre
Dernière intervention
7 avril 2010
7 avril 2010 à 20:44
7 avril 2010 à 20:44
Merci Pilas
formule finale :
Sheets("Section 2").OLEObjects(Range("B4").Value).Object.BackColor = &H8000000F
et merci aussi à ceux qui mon répondu
Juliusus
formule finale :
Sheets("Section 2").OLEObjects(Range("B4").Value).Object.BackColor = &H8000000F
et merci aussi à ceux qui mon répondu
Juliusus
7 avril 2010 à 13:22
merci pour la réponse mais le système me dit tjrs qu'il y a une erreur avec ou sans parenthèses
les formats de couleurs se retrouvent dans les propriétés du bouton
a+
Horsy