Microsoft 365 mise en forme conditionnelle : choisir la couleur d'une autre cellule

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 !

deuxnid

XLDnaute Nouveau
Bonjour, je vais essayer d’être clair car pas sur que ce soit simple à rédiger.

Je voudrais que pour des cellules données si celle ci contienne un texte précis un mise en forme soit effectué et que cette mise en forme soit une couleur.
Cette couleur sera récupéré par la couleur d'une autre cellule.
Ex si la cas A3 contient le texte "Repas" alors cette cellule aura la même couleur que la cellule B12.
Je ne sais pas si c'est simple ou compliqué du coup ...
Merci d'avance !
 
Bonjour, je ne peux pas fournir le fichier d'origine.
La "B12" elle a une couleur définie par l’opérateur, elle n'est pas définie par une règle.

Ajout : je viens de créer un fichier montrant le résultat voulu.
Si la case ne contient pas "repas" elle doit rester blanche.
Merci
 

Pièces jointes

Dernière édition:
Bonjour Deuxnid et djidji59430,
Je venais justement de faire le même classeur test que je joins.
Tu as l'occasion de choisir entre Diner et Repas en A3 et puis tu cliques sur le bouton et la couleur évoluera en fonction de la présence de Repas ou pas.
Cela se fait grâce à une petite macro que tu peux adapter.
Mais il faut que tu saches que dans Excel il existe deux systèmes de couleur et donc celui utilisé est le plus simple. Si ton modèle utilise l'autre, il faudra adapter.
Bonne continuation
Chris
 

Pièces jointes

Bonjour, merci à tous pour ces fichiers. Je suis embêté pour le moment car même en activant les macros elles sont bloqués pour des raisons de sécurité (pc pro) car elles viennent d'internet ....
Serait il possible d'avoir le contenu des macros sous forme de texte pour essayer de le rajouter manuellement et essayer ?
 
Bonsoir @deuxnid 🙂 ,

Voici une capture d'écran pour s’imaginer les choses et aussi le texte de la macro.

Texte de la macro dans le module de la feuille concernée :
VB:
Sub colorier()
Dim t, x As Range, n&
   t = Range("a12:a14")
   Application.ScreenUpdating = False
   Range("a2:L9").Interior.ColorIndex = xlColorIndexNone
   For Each x In Range("a2:L9").Cells
      If x <> "" Then
        n = Application.IfError(Application.Match(x, t, 0), 0)
        If n > 0 Then x.Interior.Color = Range("a12:a14")(n, 1).Interior.Color
      End If
   Next x
End Sub

1727193653567.png
 
Bonjour le Forum

Une variante avec la méthode objet et SpecialCells(xlCellTypeConstants) permet de ne sélectionner que les cellules non vides d'une plage. Cette approche améliore l'efficacité du code en évitant de parcourir toutes les cellules, ce qui est particulièrement utile lorsque l'on travaille avec de grandes plages de données. Ainsi, on peut se concentrer uniquement sur les cellules contenant des valeurs, rendant le traitement plus rapide et plus efficace.

VB:
Sub colorier()
    Dim x As Range, res As Variant
    Application.ScreenUpdating = False
    Range("a2:L9").Interior.ColorIndex = xlColorIndexNone
    On Error Resume Next ' Gérer le cas où aucune cellule non vide n'est trouvée
    For Each x In Range("a2:L9").SpecialCells(xlCellTypeConstants)
        res = Application.Match(x, Range("a12:a14"), 0)
        If Not IsError(res) Then x.Interior.Color = Range("a12:a14")(res).Interior.Color
    Next x
    On Error GoTo 0 ' Désactiver la gestion d'erreur automatique
    Application.ScreenUpdating = True ' Réactiver la mise à jour de l'écran
End Sub
 
Bonjour à tous,
Pour débloquer les macros lors de l'importation d'un classeur :
1 utiliser un éditeur de fichier
2 aller dans les propriétés
3 en bas du tableau il faut cocher la case




1727197125935.png
I
1727197352151.png


Il reste à enregistrer le classeur et les macros devaient fonctionner
Bonne continuation
Chris
 

Pièces jointes

  • 1727197286265.png
    1727197286265.png
    788 bytes · Affichages: 8
- 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

Discussions similaires

Réponses
4
Affichages
141
Réponses
2
Affichages
108
Retour