Impossible de remplacer un formule

Bonjour,

J'ai une macro qui comporte cette routine

ActiveCell.FormulaR1C1 = _

"=VALUE(LEFT(RC[-1],4))*24*60+VALUE(MID(RC[-1],7,2))*60+VALUE(RIGHT(RC[-1],2))"

Range("I2").Select

Selection.AutoFill Destination:=Range("I2:I100"), Type:=xlFillDefault

Range("I2:I100").Select

ActiveWindow.SmallScroll Down:=-51

Range("I2:I100").Select

ActiveWindow.SmallScroll Down:=-33

Range("A1").Select

Je souhaite remplacer "=VALUE....... par

=SI(ESTERREUR(CNUM(GAUCHE(H2;4))*24*60+CNUM(STXT(H2;7;2))*60+CNUM(DROITE(H2;2)));""; CNUM(GAUCHE(H2;4))*24*60+CNUM(STXT(H2;7;2))*60+CNUM(DROITE(H2;2)))

car dans la continuité de la macro, je demande la somme des cellules de I2 a I100 et toute les cellules non pas forcement une valeur suivant mon fichier de base.

De ce fait les cellules sont notifiées par #VALEUR! ce qui me stop la macro.

Auriez-vous une idée de génie, SVP

Merci a vous

Bonjour,

essaie ceci

ActiveCell.Formula = _
"=IF(ISERROR(VALUE(LEFT(H2,4))*24*60+VALUE(MID(H2,7,2))*60+VALUE(RIGHT(H2,2))),"""", VALUE(LEFT(H2,4))*24*60+VALUE(MID(H2,7,2))*60+VALUE(RIGHT(H2,2)))"

Bonjour,

Essaies :

ActiveCell.FormulaLocal = _
"=SI(ESTERREUR(CNUM(GAUCHE(H2;4))*24*60+CNUM(STXT(H2;7;2))*60+CNUM(DROITE(H2;2)));"""";CNUM(GAUCHE(H2;4))*24*60+CNUM(STXT(H2;7;2))*60+CNUM(DROITE(H2;2)))"

ATTENTION : il faut pour obtenir des " dans une chaine il faut les doubler, d'où ...DROITE(H2;2)));"""";...

Re

Super ça fonctionne.

Un grand merci pour vos réponses et la rapidité.

Bon WE

Rechercher des sujets similaires à "impossible remplacer formule"