Une formule locale qui ne passe pas

Bonjour tout le monde

J'essaye d'introduire une formule excel a partir de VBA

Worksheets("Facture ALD").Range("W2").FormulaLocal = "=+SI(X2<>" & """" & ";" & "Assur" & ";SI(Y2<>" & """" & ";" & "Interets" & "; SI(Z2<>" & """" & "; " & "Leasing" & "; SI(AA2<>" & """" & "; " & "Carb" & ";" & "Autres Frais Auto" & "))))"

La formule est accepté dans VBA mais lorsque je lance la macro, le debogeur s'arrête sur cette ligne avec le message suivant: "Erreur définie par l'application ou par l'objet."

Je ne vois pas quoi faire

Bonjour,

Envoie ton fichier.

Cdlt.

fait

la ligne qui pose problème est dans la sub formules

Merci de ton aide

12macro-silvia.xlsm (290.59 Ko)

bonjour

proposition de correction à tester

Worksheets("Facture ALD").Range("W2").FormulaLocal = "=+SI(X2<>" & "" & ";" & """Assur""" & ";SI(Y2<>" & "" & ";" & """Interets""" & "; SI(Z2<>" & "" & "; " & """Leasing""" & "; SI(AA2<>" & "" & "; " & """Carb""" & ";" & """Autres Frais Auto""" & "))))"

ps : pour vérifier ce qui ne va pas dans une formule générée via vba, tu peux la convertir en texte en mettant un ' avant le signe égal.

Worksheets("Facture ALD").Range("W2").FormulaLocal = "'=+SI(X2<>" & "" & ";" & """Assur""" & ";SI(Y2<>" & "" & ";" & """Interets""" & "; SI(Z2<>" & "" & "; " & """Leasing""" & "; SI(AA2<>" & "" & "; " & """Carb""" & ";" & """Autres Frais Auto""" & "))))"

OK , j'ai suivi ton conseil h2so4, j'ai mis la formule en texte pour voir ce qui ne passait pas.

Chaque fois que l'on veut obtenir un "" sous excel il faut noter """""" dans vba. Simple......

Merci a vous deux

Rechercher des sujets similaires à "formule locale qui passe pas"