[VBA]Utilisation de LOOKUP [Résolu]

Messages postés
6
Date d'inscription
samedi 21 avril 2012
Dernière intervention
4 mai 2012
- - Dernière réponse : ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
- 22 avril 2012 à 11:58
Bonjour,

Je débute en VBA pour Excel 2010.
Pourriez-vous me guider sur l'utilisation de la fonction Lookup, équivalent de Recherche?

En fait, il fonctionne si j'écris :
Range("B" & Ligne) = "=LOOKUP(H8 ,code_planning,code_horaires)"

mais il se bloque quand je remplace H8 par une ligne générale, càd :

Range("B" & Ligne) = "=LOOKUP("H" & Ligne ,code_planning,code_horaires)"

Le message d'erreur est Erreur de compilation :Erreur de syntaxe, et il clignote sur le "H".

Merci d'avance pour votre aide
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
6
Date d'inscription
samedi 21 avril 2012
Dernière intervention
4 mai 2012
3
Merci
Merci ucfoutu, et désolée pour la section, je saurai où je dois discuter la prochaine fois.

En tout cas, j'ai fini par trouver l'erreur de syntaxe. Cette fois-ci, c'est OK



Range("B" & Ligne) = "=lookup(H" & Ligne & ", code_planning, code_horaires)"

Thanks !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 111 internautes nous ont dit merci ce mois-ci

Commenter la réponse de inirina
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
259
0
Merci
Bonjour,
Déjà :
1) tu ne développes dont pas sous :
Forum > VB.NET et VB 2005

(la présente section), mais sous VBA !
Ta discussion aurait donc du être ouverte dans la section Langages dérivés > VBA (qui n'a rien à voir avec VB.Net)
Notre-le pour tes prochaines discussions (important)
2) ouvre ton aide en ligne (aide VBA) sur ces deux mots :
Formula
FormulaLocal
Et lis ...




________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
259
0
Merci
Je te précise ceci ;
Une formule est une chaîne de caractères (rien d'autre)
Si cette chaine marche (tu le dis) :
= LOOKUP(H8 ,code_planning,code_horaires)
et que tu veux remplacer H8 par ... disons la variable x contenant "N9"
Ton seul problème est de savoir écrire, par concaténation une chaine contenant
= LOOKUP(N9 ,code_planning,code_horaires)
en y insérant x au lieu de N9
Comme tu le vois, c'est un problème basique de concaténation incluant une variable, qu'il s'agisse ou non de VLOOKUP
Rien d'autre qu'un problème basique .
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
259
0
Merci
En d'autres termes (vlookup ou autre), tu dois avoir une chaîne cohérente et elle ne l'est pas.
La preuve :
ligne = 8
msgbox "=LOOKUP("H" & Ligne ,code_planning,code_horaires)"

te donnerait une erreyur, forcément !
et la même que si u écrivais n'importe quoi d'autre à la place de VLOOKUP, pardi !*
Allez ===>> je VEUX te voir réfléchir et réagir. Tu as en main l'essentiel, maintenant !

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
259
0
Merci
Bien, mais j'aurais préféré que tu écrives :
Range("B" & Ligne).formula = "=lookup(H" & Ligne & ", code_planning, code_horaires)" 


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.