Recherche v vba

Fermé
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013 - Modifié par irongege le 30/08/2013 à 14:54
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013 - 3 sept. 2013 à 17:54
Bonjour à tous,

Je viens à vous afin d'avoir une petite aide concernant la recherche v via vba.

En effet, je cherche à connaître un moyen d'effectuer une recherche v qui puisse faire une boucle et, à chaque fois, descendre d'une ligne pour coller l'info.

Par exemple:

le mot recherché est Alpha.

dans le fichier de référence, on retrouve 4 fois le mot Alpha dans la colonne A.


J'aimerais donc savoir comment faire pour que la macro vienne copier les valeurs trouvées via recherchev(Alpha;fichierdéréférence;...) et qu'elle me les copie les unes en dessous des autres.


Des idées ?


Par avance, merci :)
A voir également:

2 réponses

g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
30 août 2013 à 12:46
Bonjour,

Sans VBA, tu as une solution ici http://gerard.g.pagesperso-orange.fr/logexl_08.htm#Recherche_avec_résultats_multiples

Cordialement.
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
30 août 2013 à 14:44
Merci pour ta réponse.

Le problème est que j'ai déjà une macro qui exécute certaines infos et j'aurais aimé avoir ca dans la continuité.

Qui plus est, je n'ai pas réussi à adapter le code sur mon cas.. (il ne me prend pas toutes les valeurs trouvées).
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
30 août 2013 à 14:53
En fait, ce dont j'ai du mal à comprendre, c'est la fin de la formule
=INDEX(val;PETITE.VALEUR(SI(ref=$F$2;LIGNE(INDIRECT("1:"&LIGNES(ref))));LIGNES($1:1)))

Car dans l'exemple sur lequel tu m'as envoyé, les réponses sont mises automatiquement à côté de la valeur recherchée.

En l'occurence, dans mon cas, la valeur recherchée est C16 et les infos se colleraient à partir de D19.
0
g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
Modifié par g le 30/08/2013 à 17:24
Essaie ceci:

D19=INDEX(val;PETITE.VALEUR(SI(ref=$C$16;LIGNE(INDIRECT("1:"&LIGNES(ref))));LIGNES($18:18)))

à valider avec Ctrl+Maj+Entrée puis à étirer vers le bas.
0
g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
30 août 2013 à 17:22
Le fichier que tu peux télécharger sur http://gerard.g.pagesperso-orange.fr/logexl_08.htm#Recherche_avec_résultats_multiples
comporte en feuille 2 un code VBA qui fait la même recherche.
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
2 sept. 2013 à 14:14
Salut G!

Effectivement, il fallait que je clique sur ctrl +Maj pour que ca soit fonctionnel!

En revanche, j'ai essayé d'intégrer le code dans mes codes déjà fait mais cela ne fonctionne pas.. Grossomodo, celà fait comme si aucun code était rentré pour cette partie là !

as-tu des idées ?
0
g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
2 sept. 2013 à 21:06
Pour pouvoir trouver une éventuelle solution le code initial est indispensable.

Bonne soirée.
0