Digital Finance, Cryptofinance Daily News | Innovation, Transformation


              



Recherche H ou V avec « faux »


Un problème se présente cependant avec le modèle du 24 mars. Qu'arrive-t-il si l'on entre en F14 un prénom erroné, par exemple « Jules » ?



 Recherche H ou V avec « faux »
Eh bien, tout logiquement, nous récupérerons les résultats pour « Jacques Lerose », puisque « Jacques » est le dernier prénom inférieur ou égal à « Jules ».

Là nous constatons qu'il y a un problème. En effet, avec la table de tarifs postaux, les valeurs intermédiaires sont acceptables : tout envoi entre 100 gr. et 250 gr. coûte effectivement 1,22 €. En revanche, un prénom entre « Jacques » et « Léon » ne correspond pas à « Jacques ».

Il est donc souhaitable de pouvoir exclure – dans un tel cas – les valeurs intermédiaires. C'est une fonctionnalité qui n'était pas présente dans la première version de RechercheH() et RechercheV(), mais qui a été ajoutée par la suite. L'astuce revient à ajouter un quatrième argument avec la valeur FAUX, pour indiquer à Excel que l'on refuse les valeurs intermédiaires.

 Recherche H ou V avec « faux »

Nouvelle formule de F15 : =recherchev(F14;E3:F11;2;faux)

Si le prénom n'est pas présent dans la liste, la valeur « #NA » apparaît alors…

Remarque 1

Quand il n'y a pas de quatrième argument, cela se passe comme si ce quatrième argument était VRAI : les valeurs intermédiaires sont alors acceptées.

Remarque 2

Microsoft ne vous le dit pas dans l'aide mais, quand il y a FAUX en quatrième argument, l'algorithme utilisé est différent. Dans ce cas, Excel descend la colonne de recherche jusqu'à ce qu'il trouve la valeur cherchée et – dès qu'il l'a trouvée – s'arrête et renvoie ce qui est dans cette ligne et dans la colonne demandée.

Corollaires de la remarque 2

Etant donné l'algorithme utilisé quand il y a FAUX en dernier argument, il est évident que, dans ce cas, il n'y a plus aucune nécessité pour que la colonne de recherche soit triée en ordre croissant.

S'il y a plusieurs « Gilles » dans la liste, c'est maintenant le premier qui sera retenu…

Remarque 3

Ce dernier argument avec FAUX fonctionne avec RechercheV() et avec RechercheH(), mais pas avec Recherche(). Pour obtenir le même résultat avec Recherche(), il faut écrire : =si(recherche(valeur);vecteur_recherche)=valeur;recherche(valeur;matrice_recherche);na())

rédigé par Hervé Thiriez

Mardi 7 Novembre 2006
Notez


Les derniers articles publiés sur Finyear

Recevez notre newsletter quotidienne comme plus de 40.000 professionnels de la gestion et de l'innovation financières


Livres Blancs




Blockchain Daily News


Cryptocurrencies