Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 changer la Couleur de fond d'une forme suivant un text

tuonoman

XLDnaute Occasionnel
Bonjour à tous

grâce a l'aide de Soan et patricktoulon, j'utilise le code VBA
VB:
Sub hidetesthaut()
ActiveSheet.Unprotect
  Dim f As Boolean: f = Columns("b").Hidden: Columns("b:h").Hidden = Not f
  ActiveSheet.Shapes("Rectangle 7").TextFrame.Characters.Text = _
    IIf(f, "Masqu", "Affich") & "er test haut"
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Pour masquer des colonnes via un bouton qui est une forme.

maintenant j'essai de changer la couleur de ce bouton suivant le texte que contient cette forme

je suis arrivé a ce bon de code
Code:
Private Sub Worksheet_Change()
    If ActiveSheet.Shapes("Rectangle 7").TextFrame.Characters.Text = "Masquer test haut" Then
            ActiveSheet.Shapes("Rectangle 7").Fill.ForeColor.RGB = Red
        ElseIf ActiveSheet.Shapes("Rectangle 7").TextFrame.Characters.Text = "Afficher test haut" Then
           ActiveSheet.Shapes("Rectangle 7").Fill.ForeColor.RGB = Green
        End If
End Sub

mais il ne fonctionne pas.

Pouvez vous m'aider.

merci
 

soan

XLDnaute Barbatruc
Inactif
Bonjour tuonoman, Dranreb,

je précise que l'événement Worksheet_Change() se déclenche s'il y a un changement de la valeur d'une cellule, mais ça ne se déclenche pas pour un changement de la couleur d'une cellule.​

soan
 

soan

XLDnaute Barbatruc
Inactif
@Dranreb

??? j'ai écrit « changement de la valeur d'une cellule » pas « changement de la valeur d'une formule ».

sur mon Excel 2007, changer la valeur d'une cellule fait que la sub Worksheet_Change() est appelée, si la modif est faite sur la feuille correspondante de la sub événementielle (module de la feuille).​

soan
 

Dranreb

XLDnaute Barbatruc
La valeur de la cellule change si elle porte une formule dont la valeur change.
Beaucoups s'y sont trompés et ont cru que cela pouvait se détecter par une Worksheet_Change.
C'est pour ça que j'ai préféré parler de 'contenu' plutôt que de 'valeur'.
 

Discussions similaires

Réponses
0
Affichages
486
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…