Probleme WITH avec condition

Bonjour,

Je souhaite à l'exécution de mon code que si la cellule A1 contienne le mot bonjour le Rectangle 1 se colore en blanc et que son texte soit en noir.

Mais quelque soit la valeur de la cellule le rectangle passe en blanc.

With Range("A1").Value = "Bonjour"

ActiveSheet.Shapes.Range(Array("Rectangle 1")).Select
With Selection.ShapeRange.Fill    'Coloration en BLANC
        .Visible = msoTrue
        .ForeColor.ObjectThemeColor = msoThemeColorText1
        .ForeColor.TintAndShade = 0
        .ForeColor.Brightness = 0
        .Transparency = 0
        .Solid
    End With
    With Selection.ShapeRange.TextFrame2.TextRange.Font.Fill    'Coloration en NOIR
        .Visible = msoTrue
        .ForeColor.ObjectThemeColor = msoThemeColorBackground1
        .ForeColor.TintAndShade = 0
        .ForeColor.Brightness = 0
        .Transparency = 0
        .Solid
    End With

Bonjour,

Je pense que votre code est mal construit. Ici vous testez si A1 est égal a Bonjour, donc il faut utiliser If et non With. Ci-contre un test pour colorier la forme Rectangle 1 avec fond blanc et texte noir :

Sub MEFC()
If [A1] = "Bonjour" Then
ActiveSheet.Shapes("Rectangle 1").Select
    With Selection.ShapeRange.Fill    'Coloration en BLANC
        .ForeColor.RGB = RGB(255, 255, 255)
    End With
    With Selection.ShapeRange.TextFrame2.TextRange.Font.Fill    'Coloration en NOIR
        .ForeColor.RGB = RGB(0, 0, 0)
    End With
End If
End Sub

Cdlt,

Vous pensez très bien ^^"

En relisant ce que j'ai fait...
Et bien ce n'est pas terrible ^^"

Merci à vous et bon week-end.

Rechercher des sujets similaires à "probleme condition"