Donner des conditions de mise en page suivant le contenu d'une cellule

Bonjour,

Je suis en train de réaliser une fiche de contrôle et je pense que je vais avoir besoin de coder en VBA si je ne veux pas passer un temps fou sur chaque cellule.

J'ai 4 feuilles dans mon Excel (ce sont des clones, seuls la mise en page change)

Feuille0 celle sur laquelle les cellules vont influencer la mise en page

Feuille1 clone de la feuille0 avec texte en gras et couleur vert (RVB 0:153:0)

Feuille2 clone de la feuille0 avec texte en gras et couleur rouge (RVB 204:0:0)

Feuille3 clone de la feuille0 avec texte non-gras et couleur gris (RVB 178:178:178)

Sur ma feuille0, j'ai des cellules pouvant contenir soit "o" soit "x" soit "n".

Si une cellule contient "o" (par exemple cells(1,1) ) je voudrais que la cellule directement à sa droite (soit la cells(1,1+1) ) prenne la mise en page de la cellule cells(1,1+1) de la feuille1

J'ai une centaine de cellule qui peuvent avoir ces trois possibilités donc si je le fais avec des "Mise en formes conditionnelles" je pense que j'y serai encore à pacques...

Je pense que le code pourrait ressembler à quelque chose du genre

Si cells(1,1) = "o" alors cells(1,1+1) = Feuille1!cells(1,1+1)

Si quelqu'un peut m'aider, je devrais pouvoir réussir la suite des conditions si la cellule contient "x" ou "n".

Salut Guilhem,

code qui correspond à des cellules ("x,o,n") éparpillées...
Si ces cellules sont bien rangées dans des colonnes précises, prière de préciser afin de cibler leur détection.
Dans ce fichier, la macro copie le format de la cellule [A1] des 'Feuille' 1-2-3.

Private Sub Worksheet_Change(ByVal Target As Range)
'
Dim arVal()
'
arVal = Array("o", "x", "n")
Target.Offset(0, 1).ClearFormats
For x = 0 To 2
    If Target = arVal(x) Then
        With Worksheets("Feuille" & x + 1)
            .[A1].Copy
            Target.Offset(0, 1).PasteSpecial Paste:=xlPasteFormats
        End With
    End If
Next
'
End Sub
9guilhem.xlsm (21.24 Ko)


A+

Bonjour Curulis57,

Merci pour ce code, il fonctionne super bien.

Les cellules pouvant prendre la valeur ("x,o,n") sont sur les mêmes colonnes en D,F,I,M sur des lignes aussi connues (22,28, etc.).

Lorsque que j'applique le code je rencontre un petit bug (ma faute, j'ai oublié une information) certaine cellule à droite de mes ("x,o,n") peuvent être fusionnées, je vais voir si en les défusionnant je peux m'en sortir.

En tout cas merci beaucoup ;D

Rechercher des sujets similaires à "donner conditions mise page suivant contenu"