changer la couleur d'un bouton

  • Initiateur de la discussion Initiateur de la discussion aubelix
  • 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 !

aubelix

XLDnaute Impliqué
Bonjour à tous les amis du Forum 🙂
Et bon dimanche à tous.

J'ai essayé d'adapter un code de PierreJean.
Même titre que ce message, mais je n'y arrive pas.
Voir le code dans Feuille "Accueil"...
Dans un carnet d'adresses, la page d'accueil comporte
des boutons de A à Z
J'aurais aimé que la couleur ds boutons dont les pages des noms
sont vierges (pas de noms enregistrés) soient de couleur grise et à
l'inverse, si des noms existent, couleur verte.

Par avance Merci pour votre aide.
Cordialement.
 

Pièces jointes

Re : changer la couleur d'un bouton

Bonjour,

Bonjour, C-C 🙂

Regarde le fichier joint, j'y ai modifié le code, et inséré un module de classe, afin d'éviter les 26 codes que tu devais mettre pour les boutons...

Si tu rajoutes des boutons, appuie sur "Initialisation"

Si tu rajoutes des noms dans des feuilles "vides", en retournant sur la feuille "Accueil", les couleurs des boutons sont actualisées...

Bon dimanche
 

Pièces jointes

Re : changer la couleur d'un bouton

bonjour, salut le squale 🙂,
Supprime les lignes dans le module de la feuille "Accueil" et dans le module de ThisWorkBook, macro événementielle
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Column <> 3 Or Target.Row = 1 Then Exit Sub
nf = Target.Parent.Name
x = Application.CountA(Sheets(nf).Columns(3)) - 1
With Sheets("Accueil")
    Set btn = .Shapes("BTN_" & nf)
    With btn
        If x > 0 Then
            .DrawingObject.Object.BackColor = &HFF00&
        Else
            .DrawingObject.Object.BackColor = &HE0E0E0
        End If
    End With
End With

End Sub

Edit :salut bhbh

A+
kjin
 
Re : changer la couleur d'un bouton

Re 🙂

J'ai parlé un peu trop vite !

J'ai testé avec des données, mais je les efface
j'ai message d'erreur :
Code:
Impossibilté de définir la propriété Backcolor.
Valeur de propriété non valide.

J'ai ajouté on error resume Next, mais le bouton reste vert.

Merci pour ton aide.
Cordialement.
 
Re : changer la couleur d'un bouton

Bonjour à tous,

Petite contribution:

Dans l'évènements thisWorkBook_SheetChange:

Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address = "$C$2" And Sh.Name Like "[A-Z]" Then
    Sheets("Accueil").OLEObjects("BTN_" & Sh.Name).Object.BackColor = Array(&HE0E0E0, &HFF00&)(-(Target <> ""))
End If
End Sub

A+
 
Re : changer la couleur d'un bouton

Bonjour à tous 🙂

Ci-dessous réponse que j'ai faite à BhBh qui ma interpellé sur la
non réponse à vos travail qui au passage, toujours respecté...

Aussi une fois de plus, mille excuses pour ce malentendu. 🙁
Toutes vos solutions fonctionnent.
Merci à tous.
Cordialement.

Code:
Bonjour bhbh. :)
 
Désolé, ce n'est pas du tout dans ma personnalité ni dans mon style.
Je vous prie de m'excuser, mais ça m'est sorti de l'esprit.
Et pour cause toutes les solutions fonctionnaient, j'ai effectivement
répondu, mais je ne sais pas ce qui s'est passé. :confused:
 
Tu remarqueras, qu'à chaque question, je réponds et je me confonds en
remerciements pour l'aide que vous tous apportez à moi et à toute la
communauté.
 
Une fois de plus, je vous prie d'accepter mes excuses. :(
 Cordialement.
 
Dernière édition:
- 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
Retour