mise en forme de cellules

nak

XLDnaute Occasionnel
Bonsoir

Je viens de réaliser cette macro :
Sub Macro1()
'
' Macro1 Macro
'
Selection.FormulaR1C1 = "1"
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 65280
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.Color = -16711936
.TintAndShade = 0
End With
End Sub

Elle applique "1" dans les cellules sélectionnées, fait passer les texte et la couleur de font en vert.
Celle-ci fonctionne bien dans un seul sens. Maintenant j'aimerais que lorsque j'applique cette macro sur des cellules déjà modifiées (1 vert + fond vert) celle-ci m'efface le 1 et repasse le fond en blanc. Sans toucher aux autres mises en forme.

C'est pour cela que je demande un peu d'aide, je ne maitrise pas du tout la fonction If.

Merci d'avance.
 

Pièces jointes

  • couleur.xls
    32.5 KB · Affichages: 43
  • couleur.xls
    32.5 KB · Affichages: 47
  • couleur.xls
    32.5 KB · Affichages: 46

Micke-31

XLDnaute Occasionnel
Re : mise en forme de cellules

Salut nak,

testes ce code, mais il est possible de l'épurer encore

Sub Macro1()
If ActiveCell = "1" Then
Selection.FormulaR1C1 = ""
Selection.Interior.ColorIndex = xlNone
Else
Selection.FormulaR1C1 = "1"
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 65280
End With
With Selection.Font
.Color = 16711936
End With
End If
End Sub

A+
 

Discussions similaires

Statistiques des forums

Discussions
313 344
Messages
2 097 337
Membres
106 916
dernier inscrit
Soltani mohamed