annyong
Messages postés38Date d'inscriptionlundi 23 avril 2007StatutMembreDernière intervention25 février 2015
-
25 juil. 2011 à 13:45
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
26 juil. 2011 à 07:39
Bonjour,
Je fais un vlookup en VBA, et je voudrais retourner une valeur telle que dans l'exemple ci-dessous :
MaValeur= Nb * (Application.VLookup(Sheets("oranges").Range("A" & Id), Sheets("citrons").Range("A:Y"), 25, 0))
la variable Nb peut prendre differentes valeurs; le vlookup va retourner 1 et je veux que MaValeur égale 3 si Nb =3 par exemple.
Tel que c'est écrit, ca passe, je n'ai pas de message d'erreur, mais je n'ai pas 3 dans MaValeur. Ca veut dire que VBA n'interprète pas ça comme MaValeur = 3 * 1, si le résultat du vlookup est 1.
Il doit y avoir une autre façon d'écrire ça pour avoir le résultat souhaité dans MaValeur, mais je ne sais pas comment.
Savez vous ?
Merci!
A voir également:
Impossible de lire la propriété vlookup de la classe worksheetfunction
NHenry
Messages postés15049Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention25 mars 2023156 25 juil. 2011 à 22:06
Bonjour,
"Tel que c'est écrit, ca passe, je n'ai pas de message d'erreur, mais je n'ai pas 3 dans MaValeur. Ca veut dire que VBA n'interprète pas ça comme MaValeur = 3 * 1, si le résultat du vlookup est 1. "
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018220 26 juil. 2011 à 07:13
Bonjour,
Quel que puisse être le contenu de Vlookup (y compris le plus inattendu et le plus incohérents, éventeuellement) Nb * cette_valeur ne saurait en aucun cas retourner 1 systématiquement !
Je ne peux alors qu'en conclure (sur la base de ce que tu nous dis) Mavaleur a &t& initialisée à 1, puis que :
- soit ton code ne passe pas par la ligne que tu nous as montrée,
- soit tu as utilisé une gestion d'erreur (genre On Error Resume Next) mal conçue ! (je penche plus pour cette hypothèse).
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018220 26 juil. 2011 à 07:22
Ouais !
Après re-lecture et re-re-lecture :
C'est certain : Tu as géré l'erreur et très probablement avec un "On Error Resume Next".
Tu fais une recherche sur deux feuilles à la fois ?
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Vous n’avez pas trouvé la réponse que vous recherchez ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018220 26 juil. 2011 à 07:37
Parmi les erreurs possibles :
- mauvaise orthographe de la feuille oranges
- mauvaise orthographe de la feuille citrons
- id = 0 (ou pas un numérique)
etc...
Passe en mode debug et vérifie tous ces points.
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP