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,