Créer une rechercheV avec correspondances multiples

Fermé
Utilisateur anonyme - 17 avril 2014 à 11:16
 Utilisateur anonyme - 23 avril 2014 à 09:30
Bonjour à tous,

Je travaille dans la comptabilité et suis souvent amené à faire des rapprochements entre deux bases de données.
Pour gérer les correspondances multiples, ma méthode actuelle est de faire une recherchev et à côté un nb.si qui m'indique s'il y a plusieurs correspondances ou non. S'il y en a plusieurs, je vais les chercher manuellement.

Je voudrais m'épargner ce travail car lorsqu'on travaille sur des bases avec quelques milliers de lignes, ça prend la journée !

J'aimerais donc créer une fonction "RechercheVMultiple" qui me permettrait de faire sortir toutes les correspondances d'un coup !

Pour l'instant j'ai réussi à avoir ça :

https://dl.dropboxusercontent.com/u/36925448/Sans%20titre.jpg

En colonne E il y a la recherche V normale (=RECHERCHEV(D2;A:B;2;0) pour la cellule E2), en colonne F le résultat obtenu avec ma fonction :

Function recherchevmultiple(c)
If Application.CountIf([A:A], c.Value) = 0 Then Resultat = "aucune correspondance"
If Application.CountIf([A:A], c.Value) = 1 Then Resultat = Application.VLookup(c.Value, [A1:B10], 2, 0)
If Application.CountIf([A:A], c.Value) > 1 Then Resultat = "plusieurs correspondances"
recherchevmultiple = Resultat
End Function

Comme vous pouvez le constater, je ne sais pas comment faire pour que ma fonction ait les mêmes arguments qu'une recherchev normale du coup je suis obligé de les rentrer en VBA. Idéalement, il faudrait que RechercheVMultiple demande le critère, la plage, le numéro de colonne à renvoyer avec toujours une correspondance exacte.

Enfin, en colonne G vous trouverez le résultat que je souhaite obtenir avec cette fonction.

Pouvez-vous m'aider ? Ce serait merveilleux !

Merci d'avance.

5 réponses

g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 575
17 avril 2014 à 11:22
Bonjour,

Regarde ici

http://gerard.g.pagesperso-orange.fr/logexl_08.htm#Recherche_avec_résultats_multiples

cela devrait convenir.

Cordialement.
0