OVH Cloud OVH Cloud

affectation d'une formule par vb

1 réponse
Avatar
Etienne REMOND
Bonjour

j'ai un probleme (assez urgent) à régler

voilà, j'ai plusieurs dans un excel 2000 avec des données.

par vb, je remplis un onglet vierge. je remplis des valeurs littérales
et aussi des formules.
pour fixer une formule basique, ici la cellule D2 sera égale à
B2*C2/1000, pour chaque ligne ... donc pas de probleme, je fais:

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
wsh.Range("D" & lig).Value = _
("=B" & lig & "*" & "C" & lig & "/1000")
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
(avec wsh etant une worksheet)

!!! MAIS !!!

le probleme vient quand je veux fixer cette formule qui utilise la
fonction recherchev.
je fais:

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
wsh.Range("E" & lig).Value = _
("=RECHERCHEV(""2002§""&A" & lig & ";ventes!A:D;4;FAUX)")
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

et ça me sort l'erreur

--------------------------------------------------
Erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet
--------------------------------------------------

alors que la formule que je construis est
=RECHERCHEV("2002§"&A2;ventes!A:D;4;FAUX)
et elle est tout à fait opérationnelle quand je la tape manuellement.


=> que faire ?

merci beaucoup pour les bonne âmes qui auront pitié de mon problème.






Etienne

1 réponse

Avatar
AV
Il faut utiliser l'anglais (noms de fonctions et la virgule comme séparateur
d'arguments) :

wsh.Range("E" & lig) = "=VLOOKUP('2002§'!A" & lg & ",ventes!A:D,4,FALSE)"

AV