XL 2013 RECHERCHEV en cascade

FrancoisH

XLDnaute Nouveau
Bonjour à tous,

Utilisateur régulier d'Excel, je coince un peu sur la combinaison des fonctions SI et RECHERCHEV. Voici mon cas :

- J'ai une base client avec des informations de contact (Nom, Prénom, Adresse postale, mail, etc) et dans laquelle nous avons ajouté des informations techniques.

- J'ai un deuxième fichier obtenu via un formulaire en ligne rempli par le client (Et donc parfois source d'erreurs : nouvelle adresse mail, adresse d'intervention écrite différemment etc)

Dans ce second fichier, je voudrais pouvoir retrouver les informations techniques lorsque je suis déjà intervenu chez le client, avec la logique suivante :

Si adresse identique --> remonter l'information
Sinon, chercher via la concaténation du Nom et Prénom
Sinon chercher via l'adresse mail
Sinon chercher via le numéro de téléphone

Tout ça pour me donner le plus de chance de retrouver l'info

J'ai essayé avec SI(ESTNA(RECHERCHEV... mais je n'arrive à combiner que deux critères, et la formule me semble à terme terriblement lourde.

Sinon j'envisageais de créer plusieurs colonnes avec une RECHECHEV sur mon premier critère, puis dans la colonne d'à côté si le résultat est #N/A, une RECHERCHEV sur mon deuxième critère etc etc.

Je vous laisse un fichier exemple avec un premier onglet "base" et le second onglet dans lequel je veux retrouver l'info. Dans la réalité, ca serait deux fichiers séparés, mais je pourrais adapter les formules.

Un grand merci pour l'aide que vous pourrez m'apporter.

François
 

Pièces jointes

  • Exemple.xlsx
    16.7 KB · Affichages: 23
C

Compte Supprimé 979

Guest
Bonsoir François

En utilisant la fonction SIERREUR() combiné à RECHERCHEV() je pense que ça peut faire ce que vous souhaitez

En G7
VB:
=SIERREUR(RECHERCHEV([@[Adresse d''intervention]];Tableau1[[Adresse d''intervention]:[Hauteur]];3;FAUX);SIERREUR(RECHERCHEV([@Concaténation];Tableau1[[Concaténation]:[Hauteur]];5;FAUX);SIERREUR(RECHERCHEV([@[Adresse mail]];Tableau1[[Adresse mail]:[Hauteur]];4;FAUX);SIERREUR(RECHERCHEV([@Téléphone];Tableau1[[Téléphone]:[Hauteur]];2;FAUX);"IINTROUVABLE !"))))

@+
 

Discussions similaires

Réponses
3
Affichages
274
Réponses
8
Affichages
364