repére les différences

rudy

XLDnaute Occasionnel
bonjour à tous,
j ai trouver se bout de code et j aimerai l adapter car lorsque je lance la macro cela me mais toute les cellules en rouge

Range("M6:N6").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="=$A$6"
Selection.FormatConditions(1).Interior.ColorIndex = 3

mise en forme sur M6:N6 fond rouge SI DIFFERENT DE A6 mais cela sera plus claire avec le fichier complet ( essayer les différents bouton et vous serai fixer sur le probléme )

http://cjoint.com/?elijv6md4A

merci
A+
 

job75

XLDnaute Barbatruc
Re : repére les différences

Bonjour rudy,

Je dois avouer que j'ai rarement vu des formules et des macros pareilles...

1) Les cellules sont fusionnées alors pourquoi parler de M6 et N6 ? M6 suffit.

2) En M6 vous avez la formule =REPT(A6;1) qui renvoie donc du texte alors que A6 est un nombre. Donc M6 et A6 sont différents. Peut-être faut-il écrire en M6 =SI(A6="";"";A6)

3) Votre macro pourrait s'écrire simplement :

Code:
Range("M6").ClearFormat
If Range("M6") = "" Then Range("M6").Interior.ColorIndex = 3 'aussi If Range("M6") <> Range("A6") si vous préférez

4) Il faut savoir qu'en VBA il est pratiquement toujours inutile de sélectionner, donc d'utiliser Select

5) En VBA il est utile d'utiliser les boucles comme For...Next qui évitent d'écrire 36 fois le même code...

Cela fait vraiment beaucoup de choses :p

A+
 

Statistiques des forums

Discussions
312 496
Messages
2 088 976
Membres
103 995
dernier inscrit
Flodk