[Tips] Devenez un ninja avec Excel! Part III : la fonction rechercheV ou H

Suite de cette série d’articles (part I / part II) que j’avais un peu laissée trainer, surtout par manque de temps… Je vais essayer de garder le rythme par la suite.
Cette fois-ci je vais vous parler de la fonction recherchev (et de sa cousine rechercheh)

Avec RECHERCHEV, vous pouvez demander à Excel de faire une recherche dans un tableau et de renvoyer la valeur trouvée dans une cellule déterminée à l’avance.
Dis comme ça, c’est assez abstrait, mais dans la pratique, ca devient rapidement évident.
Une petit exemple d’application = faire trouver par Excel la désignation et le prix unitaire d’un produit en saisissant simplement sa référence.
C’est le même concept qui permet aux caisses enregistreuses de retrouver le nom et le prix d’un article ) partir d’un code-barre.

A partir de là, les possibilités très nombreuses : facture, bulletin de salaire, base de données…

Comment ca marche?

voici la syntaxe à utiliser:

=recherchev(cellule_lue,tableau,numéro_de_colonne,valeur_proche)

  • cellule_lue : il s’agit de la cellule qui contienne la valeur que vous voulez rechercher dans le tableau
  • tableau : le tableau dans lequel on demannde à Excel d’effectuer la recherche
  • numéro_de_colonne : le numéro de la colonne du tableau que vous avez spécifié juste avant et dont vous voulez faire remonter la valeur
  • valeur_proche : ici, vous ne pouvez entrer que 2 valeurs, VRAI ou bien FAUX. C’est une manière de demander à Excel de
    -> soit renvoyer la valeur exacte qu’il trouve (si il ne trouve rien, alors il mettre un message d’erreur) - FAUX
    -> soit toujours renvoyer une valeur - VRAI. Si il trouve la valeur exacte, pas de probleme - en revanche, si il ne la trouve pas, il prendra alors la valeur inférieure la plus proche

Personnellement je n’ai quasiment jamais utilisé cette formule avec un ‘valeur_proche=VRAI’

Je comprends pas tout - tu pourrais nous filer un exemple ?

Mais bien sûr, il n’y a qu’à demander…
Prenons l’hypothèse suivante - on met en place un jeu pour lequel chaque frag permet de gagner des €.
On établit alors un classement des joueurs avec leurs frags:

Si j’ai un listing très important de joueur, je veux gagner du temps - Je décide alors d’utiliser la fonction recherchev pour récupérer automatiquement les infos de ces différentes colonnes en fonction du nom du joueur et ainsi faire mes calculs de gains. Cela donnerait ceci:

Voici ce que fait Excel quand il exécute la formule situé en B2:

  1. il consulte la cellule A2 > il trouve la valeur ‘Dr loser’
  2. il consulte alors le tableau qui se situe entre H1 et K10. il y trouve alors la valeur recherchée en A2 > Dr Loser
  3. il écrit alors dans la cellule B2 la valeur ‘UT3′ qui correspond à la 2eme colonne du tableau

Quelques infos complémentaires pour bien exploiter cette fonction:

  • Déjà, je vous recommande de toujours trié par ordre alphabétique la colonne qui contient les valeurs que vous cherchez (sinon, ca marche pas à tous les coups)
  • Quand vous spécifiez les cellules qui constituent votre tableau, utilisez des références absolues (dans mon exemple, j’ai écris $h$1:$k$10 et pas h1:k10), sinon, quand vous allez copié/collé votre formule, toutes les références vont être faussées.
  • Si vous voulez travailler plus proprement, vous pouvez utiliser 2 feuilles de calcul. Feuil1 = votre tableau dans lequel vous allez rechercher les données / Feuil2 = le 2eme tableau dans lequel vous paramétrez votre formule
  • Rechercheh: je vous indiquais plus tôt que la fonction ‘rechercheh’ était la cousine de ‘recherchev’. Maintenant que vous avez lu jusqu’ici, vous allez comprendre que c’est en fait très simple.
    Recherchev permet de faire une recherche dans un tableau de manière Verticale (d’où le V), et renvoi les infos trouvées dans une colonne dont on spécifie le numéro
    Rechercheh, c’est exactement la même chose, mais de manière Horizontale, et la fonction permet cette fois de remonté des infos trouvées dans une ligne dont on spécifie le numéro.

Voilà, je suis au bout de cet article.
J’espère avoir pu apprendre quelques trucs qui vous seront utile. C’est une fonction vraiement facile à utiliser une fois qu’on a compris le truc, et qui peut s’avérer indispensable d’un point de vue pro.
Méfiez vous en revanche: si vos collègues Noobs comprennent que vous êtes un ninja d’Excel, ils ne vont plus vous lacher pour que vous les aidiez à produire leurs reportings.

Tags: , , , ,

9 commentaires pour “[Tips] Devenez un ninja avec Excel! Part III : la fonction rechercheV ou H”

  1. Anahkiasen dit :

    Ah du coup en fait j’avais raté mais il y a eu une partie II, vais voir ça.

  2. El_Porico dit :

    Mon dieu il y a vraiment des gens qui utilisent Excel en français? A mon boulot tous les produits Office sont en anglais et c’est préférable car tu trouveras bien plus de doc sur “vlookup” que sur “recherchev”

  3. Lork dit :

    Ca m’a toujours fait halluciner aussi qu’ils aient traduit les fonctions.

  4. zejulio dit :

    c’est pas faux, mais d’un autre coté, si les fonctions étaient en anglais 90% des employés d’une boite française lambda ne démarreraient pas excel…

  5. Anahkiasen dit :

    Lork a dit :
    Ca m’a toujours fait halluciner aussi qu’ils aient traduit les fonctions.

    Oui pareil, « ARRONDI.SUP », va rechercher quelque chose sur internet avec ça quand chaque pays a ses propres noms de fonctions.

  6. hervai dit :

    Par rapport à ton exemple, ne pourrait’on pas simplement faire un tri par valeur croissante de la colonne ? Du coup je comprend la fonction mais j’ai du mal à voir un intérêt dans un cas concret.

    Sinon, je commence à m’intéresser à excel dans le but d’automatiser des créations de base de données dans le cadre de mon boulot, mais je n’ai pas encore effectué de recherche sur l’internet : tu connaitrais des sites qui expliquent facilement, avec des exemples (un peu comme tu fais) qui permettrait de progresser assez rapidement ?
    Pour l’instant, j’en suis au stade d’enregistrer mes macros puis essayer de les éditer, mais je ne connais pas assez l’API d’excel pour créer entièrement mes macros sans enregistrement

  7. Bestaflex dit :

    Le tri du tableau source n’est franchement pas obligatoire dans la mesure ou la formule va aller chercher la référence exacte en descendant les lignes (si le test est sur faux) sur vrai elle descendra les lignes cherchera la valeur exacte et si elle ne la trouve pas refera le boulot en cherchant la vlaur la plus proche (fonctionnel uniquement sur des données numériques sur du texte c’est pas hyper pertinent)

    Une bonne idée pour les tableaux est de combiner recherche* avec un combo si(esterreur(recherche*(…));”0″;recherche*(identique))). ça permet d’éviter les #n/a en cas de non référencement de la valeur cherchée dans le tableau source et conserver des fonctions mathématiques (somme, moyenne etc..) dans le tableau cible qui foirent dès qu’un #n/a rentre dans le calcul.

    Enfin on peut, et c’est préférable si le tableau source est hyper utilisé, lui donner un nom. ça permet d’éviter les $H$h:$k$10 et d’avoir des reférence du style “classement”. Je ne sais plus qui dans son blog de créateur 3D parlait de nommer ses objets au fur et à mesure. Dans excel c’est pareil nommez les zones importantes.

    Sinon pas mal de jeunes tendent a préférer index(equiv;N° colonne).. qui est selon moi une usine à gaz qui fait la même chose que recherchev (avec de maigres avantages inutiles 99% du temps).
    La seule utilité est de la bidouiller pour arriver à du index(equiv;equiv) et d’avoir ainsi une recherche et sur les lignes et sur les colonnes.

  8. BalrogAlastor dit :

    @hervai : Access ne serait pas plus indiqué ?

  9. zejulio dit :

    @hervai:
    oui, tu as raison, mais exemple est un peu simpliste et tiré par les cheveux, mais ca n’est finalement pas évident de sortir un cas concret à partir d’hypothèses absurdes…
    pour ta problématique, en effet, je t’orientrerais a priori plutôt vers access.
    pour les sites de tuto, je n’en connais malheureusement pas trop:
    il y a bien le site du zero, mais tres axé débutant
    sinon, tu as ces 2 là que j’ai trouvé via google:
    http://www.mrexcel.com/
    http://excel.tips.net/

    @Bestaflex
    Merci pour tes remarques pertinentes.
    je suis resté généraliste dans mon article, et tes compléments sont excellents. sinon, je suis d’accord avec ton point de vue sur la fonction index - en revanche, il faudra que je teste le coup du index(equiv;equiv); ça a l’air bien puissant…

Laisser un commentaire

Si vous avez un compte sur WeFrag, connectez-vous pour publier un commentaire.

Vous pouvez, entre autres, utiliser les tags XHTML suivant :
<a href="" title="">...</a>,<b>...</b>,<blockquote cite="">...</blockquote>,<code>...</code>,<i>...</i>