Problème VBA avec un REPLACE.

ferredan Messages postés 5 Date d'inscription lundi 7 avril 2003 Statut Membre Dernière intervention 23 juin 2004 - 23 juin 2004 à 10:10
juvamine Messages postés 468 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 30 août 2007 - 23 juin 2004 à 10:15
Bonjour,

J'ai une feuille EXCEL dans laquelle, dans certaines cellules, il y a du texte de la forme "A=si(lc(3)=0;"";1)" (En réalité les formules sont beaucoup plus compliquées avec des "si(ou" multiples faisant référence à d'autres feuilles). Ce texte qui fait près de 900 caractères, dans certains cas, a été généré en VBA. J'ai été obligé de rajouter un A devant la formule car sinon, lors de l'affectation à la cellule, il y avait un plantage. Je pense que cela est dû au fait qu'il y a trop de si(ou dans la formule et que dans le VBA les fonctions sont US alors que dans la feuille EXCEL, elles sont en Fraçais (IF ==> SI ; OR ==> OU ; le point devient point virgule). En procédent ainsi, le fait de rajouter un A devant la formule fait qu'il n'y a plus d'interprétation puisque EXCEL considère qu'il s'agit d'un texte. Jusque là, cela ce passait bien.
Par contre, lorsque j'essaie de remplacer le "A=" par "=", dans mon code, j'ai un code erreur 1004. J'ai utilisé la fonction REPLACE et SUBSTITUTE même résultat. Je pense que ce qui le gêne, c'est le fait que de supprimer le A, transforme le contenu qui est de type STRING en formule.
Une précision lorsque, je fais l'opération manuellement, en passant par les menus d'EXCEL et que j'enregistre une macro, le REPLACE se fait corretement, par contre lorsque je rejoue la macro plantage.

Si quelqu'un a une solution, je suis preneur.

Merci d'avance.

D.FERRE

1 réponse

juvamine Messages postés 468 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 30 août 2007 2
23 juin 2004 à 10:15
il fo utiliser la propriété formulalocal je crois

activecell.FormulaLocal = "=..."

essai kom ca

++
juva

Retrouvez une équipe de développeurs confirmés sur le tchate:
serveur : bastia.zefunChat.net
port : 6667
chan : #programmation
0