La vie de la fonction Recherche()
La fonction Recherche() est
vraiment fondamentale. Elle présente la particularité d’être l’une des 31
fonctions de Visicalc, le premier tableur au monde, sous le nom de Lookup.
Vous pourrez le revoir dans l’article Visicalc, le grand-père d’Excel du 28 février.
La première syntaxe de Recherche()
La fonction Recherche() originale
d’Excel utilise la syntaxe =recherche(valeur;matrice).
Si la matrice est carrée ou
verticale, les valeurs de sa première colonne doivent être en ordre
croissant. Excel compare la valeur cherchée à la première colonne de la matrice,
identifie la dernière ligne où la valeur reste inférieure ou égale à la valeur
cherchée et renvoie alors la valeur de la matrice placée dans la même ligne et
la dernière colonne.
Si la matrice est horizontale, le
fonctionnement est le même, en inversant ligne et colonne.
Vous trouvez dans la première
partie de la copie d’écran ci-dessous ce qui apparaît quand on entre =recherche( dans
une cellule.
Comme c’est souvent le cas avec
des arguments facultatifs, Microsoft se trompe sur la syntaxe : il faut lire :
=recherche(valeur_cherchée ;vecteur_recherche[;vecteur_résultat])
En effet, le crochet doit être avant le « ; » sinon vous obtenez une erreur
quand il n’y a pas de vecteur_résultat !
Je suis en désaccord avec la
déclaration de Microsoft dans la copie d’écran ci-dessous : la fonction
Recherche() est bien plus simple et plus rapide que les fonctions
RechercheH ou RechercheV ou a fortiori que les solutions de type Index(Equi(…)).
La seconde syntaxe de Recherche()
Un certain nombre d’utilisateurs
se plaignaient auprès de Microsoft que le résultat de la recherche soit
obligatoirement à droite ou en dessous.
En réponse à cette demande, des
années plus tard, Microsoft a créé une seconde syntaxe :
=recherche(valeur_cherchée;vecteur_recherche;vecteur_résultat)
Dans ce cas, Excel note la
position de la valeur de référence dans le vecteur de recherche et ramène, dans
le vecteur de résultat, la valeur qui occupe la même position.
Remarque – Si vous avez l’esprit vicieux, rien ne vous
empêche alors d’utiliser un vecteur de recherche vertical et un vecteur de
résultat horizontal. C’est en effet idéal pour créer la confusion dans l’esprit
de l’utilisateur !
0 Commentaire(s):
Enregistrer un commentaire
<< Accueil