RECHERCHEV dans deux tableaux - Astuces Excel

Table des matières

La question d'aujourd'hui de Flo à Nashville:

J'ai besoin de faire une RECHERCHEV pour une série de numéros d'article. Chaque numéro d'article se trouvera dans le catalogue A ou dans le catalogue B. Puis-je écrire une formule qui recherche d'abord le catalogue A. Si l'article n'est pas trouvé, passez au catalogue B?

La solution implique la fonction IFERROR introduite dans Excel 2010 ou la fonction IFNA introduite dans Excel 2013.

Commencez par un simple RECHERCHEV qui recherche le premier catalogue. Dans l'image ci-dessous, Frontlist est une plage nommée pointant vers des données sur Sheet2. Vous pouvez voir que certains éléments sont trouvés, mais beaucoup renvoient l'erreur # N / A.

Certains éléments se trouvent dans le catalogue Frontlist

Pour gérer les situations où les éléments ne sont pas trouvés dans le premier catalogue, encapsulez la fonction RECHERCHEV dans la fonction IFERROR. La fonction IFERROR analysera les résultats de la RECHERCHEV. Si RECHERCHEV renvoie une réponse avec succès, ce sera la réponse renvoyée par IFERROR. Cependant, si le RECHERCHEV renvoie une erreur, IFERROR passe au deuxième argument, appelé Value_if_Error. Bien que je mette souvent zéro ou "Not Found" comme deuxième argument, vous pourriez avoir un deuxième VLOOKUP spécifié comme argument Value_if_Error.

Recherchez le deuxième catalogue si le premier catalogue ne produit pas de résultat.

La formule montrée ci-dessus cherchera d'abord dans la Frontlist pour une correspondance. S'il n'est pas trouvé, la table Backlist sera recherchée. Comme Flo l'a décrit, chaque élément se trouve soit dans Frontlist ou Backlist. Dans ce cas, la formule renvoie une description pour chaque article de la commande.

Regarder la vidéo

Transcription vidéo

Apprenez Excel à partir du podcast MrExcel 2208: RECHERCHEV sur deux tables

Salut, bienvenue à nouveau sur le netcast; Je suis Bill Jelen. La question d'aujourd'hui de Flo à Nashville. Maintenant, Flo doit faire un tas de RECHERCHEV, mais voici l'affaire: Chacun de ces numéros de pièce se trouve soit dans le catalogue 1, le catalogue Frontlist, soit dans le catalogue 2. Ainsi, Flo veut d'abord regarder dans la Frontlist, et si c'est trouvé, beau, arrêtez-vous. Mais si ce n'est pas le cas, passez à autre chose et consultez la Backlist. Cela va donc être plus facile grâce à une nouvelle fonction qui est apparue dans Excel 2010 appelée IFERROR.

D'accord, nous allons donc faire une recherche régulière = VLOOKUP (A4, Frontlist, 2, False). Au fait, c'est là une plage de noms; J'ai créé une plage de noms pour Frontlist et une pour Backlist. Bon, donc Frontlist: choisissez simplement ce nom entier; cliquez ici - "Frontlist", un mot, pas d'espace. Même chose ici - choisissez tout le deuxième catalogue. Cliquez dans la zone de nom, tapez Backlist, appuyez sur Entrée (sans espace). D'accord, vous voyez donc que certains de ces outils fonctionnent, et d'autres non. Pour ceux qui ne le font pas, nous allons utiliser une fonction fournie dans Excel 2010 appelée IFERROR.

IFERROR est plutôt cool. Il permet la RECHERCHEV, et si la première RECHERCHEV fonctionne, elle s'arrête simplement; mais, si le premier VLOOKUP renvoie une erreur - soit un # N / A, comme dans ce cas, ou un / 0, ou quelque chose comme ça - alors nous allons passer au deuxième morceau - la valeur d'erreur. Et, alors que la plupart du temps, j'y mets quelque chose comme "Not Found", cette fois, je vais en fait faire une autre RECHERCHEV. Donc, = VLOOKUP (A4, Backlist, 2, False). Donc, cela ferme la valeur de l'erreur, puis une autre parenthèse - celle-là en noir - pour fermer l'IFERROR d'origine. Appuyez sur Ctrl + Entrée, et nous obtenons toutes les réponses, soit du tableau 1 (le catalogue de la liste de diffusion), soit du tableau 2 (le catalogue de la liste de contrôle).

Cool, truc cool - excellente idée de Flo - je n'ai jamais pensé à faire cela, mais cela a beaucoup de sens si vous avez deux catalogues. Je suppose que vous pourriez même l'envelopper, s'il y avait un troisième catalogue, non? Vous pouvez même envelopper cette RECHERCHEV dans un IFERROR, puis avoir une autre RECHERCHEV, et nous continuerons simplement à enchaîner dans la liste, en allant au catalogue 1, catalogue 2, catalogue 3 - belle, belle astuce.

Très bien, maintenant - RECHERCHEV - couvert dans mon livre, MrExcel LIVe: Les 54 meilleurs conseils Excel de tous les temps. Cliquez sur ce "I" dans le coin supérieur droit pour plus d'informations.

OK, récapitulation de cet épisode. Flo de Nashville: "Puis-je VLOOKUP dans deux tables différentes?" Recherchez l'article dans le catalogue 1 - s'il est trouvé, alors super; si ce n'est pas le cas, passez à autre chose et effectuez une RECHERCHEV dans le catalogue 2. Donc, ma solution: commencez par une RECHERCHEV qui recherche le premier catalogue, puis encapsulez cette RECHERCHEV dans la fonction IFERROR qui était nouvelle dans Excel 2010. Si vous avez Excel 2013, vous pouvez même utiliser la fonction IFNA, qui fera à peu près la même chose. Le deuxième élément est ce qu'il faut faire si c'est faux; eh bien, si c'est faux, alors allez faire la RECHERCHEV dans le catalogue Backlist. Bonne idée de Flo - excellente question de Flo - et je voulais la transmettre.

Maintenant, pour télécharger le classeur à partir de la vidéo d'aujourd'hui, visitez l'URL ci-dessous dans la description YouTube.

Je tiens à remercier Flo d'être venu à mon séminaire à Nashville, et je tiens à vous remercier d'être passé. Je vous verrai la prochaine fois pour une autre diffusion sur Internet.

Télécharger le fichier Excel

Pour télécharger le fichier Excel: vlookup-to-two-tables.xlsx

Excellente pensée du jour

J'ai demandé à mes amis Excel Master leurs conseils sur Excel. Pensée d'aujourd'hui à méditer:

"Et un extrait de l'Art de la guerre de Sun Tzu: avec de nombreux calculs, on peut gagner; avec peu, on ne peut pas. Combien moins de chances de victoire a celui qui n'en fait pas du tout!"

John Cockerill

Articles intéressants...