Je fatigue : problème de syntaxe .Add

[Résolu]
Signaler
Messages postés
377
Date d'inscription
lundi 3 avril 2006
Statut
Membre
Dernière intervention
22 août 2018
-
Messages postés
377
Date d'inscription
lundi 3 avril 2006
Statut
Membre
Dernière intervention
22 août 2018
-
Bonsoir,

Franchement, je ne pensais pas buter sur un problème que je sais être simple: coloriser une ligne sur deux en VBA mais par les formats conditionnels (j'ai des filtres) avec formula1="=MOD(x;2)=0" où x est le row de la dernière ligne que la macro ajoute.

Sub LigneSurDeux()

Dim last As Integer
last = Range("A65536").End(xlUp).Row + 1
Range("A" & last & ":AA" & last).Select

'erreur définie par l'applicatio ou par l'objet...!
Range("A" & last & ":AA" & last).FormatConditions.Add _
    Type:=xlExpression, _
    Formula1:="=MOD(" & last & ";2)=0"
'idem avec Formula1:="=MOD(ligne();2)=0"

'même combat...!
Range("A" & last & ":AA" & last).Select
Selection.FormatConditions.Add _
    Type:=xlExpression, _
    Formula1:="=MOD(" & last & ";2)=0"


'J'ai pas encore pu voir pour cette ligne...
Range("A" & last & ":AA" & last).FormatConditions(1).Interior.ColorIndex = 34

End Sub


Je ne trouve pas où est mon erreur de script

Merci de votre aide

Cordialement
Rataxes64

1 réponse

Messages postés
377
Date d'inscription
lundi 3 avril 2006
Statut
Membre
Dernière intervention
22 août 2018

Re,

Oh la quiche que je suis...

Evidemment, s'il y DEJA un format conditionnel, ça marche pas!

Sub LigneSurDeux()

Dim last As Integer
last = Range("A65536").End(xlUp).Row + 1

    Range("A" & last & ":AA" & last).FormatConditions.Delete
    Range("A" & last & ":AA" & last).FormatConditions.Add _
        Type:=xlExpression, _
        Formula1:="=MOD(LIGNE();2)"
    Range("A" & last & ":AA" & last).FormatConditions(1).Interior.ColorIndex = 38

End Sub


Là, c'est bon!

Cordialement
Rataxes64