
EXCEL
RECHERCHEX()
La fonction RECHERCHEX() apparue dernièrement permet de compléter et d'améliorer grandement les fonctions RECHERCHEV() et RECHERCHEH().
Aujourd'hui, RECHERCHEV() reste après plus de 34 ans la 3ème fonction la plus utilisée après SOMME() et MOYENNE().
1- La fonction RECHERCHEV()
Regardons d'un peu plus près ce que nous propose la fonction RECHERCHEV() (Transposable à RECHERCHEH())
En partant du tableau ci-dessous (Un relevé de quantités [Qté] de produits pour lesquels sont indiqués la référence [Ref] et l'emplacement de stockage [Emp]) admettons que nous souhaitions récupérer la valeur de la colonne [Emp] en choisissant une [Ref].
La formule
à utiliser s'écrira comme suit :
=RECHERCHEV(F5;Tableau1;3;FAUX)
Le premier argument (F5) indique l'élément recherché,
suivi de la référence au tableau de données (note : il
aurait été aussi possible d'utiliser la notation B3:D20). Ensuite,
vient le numéro de colonne où se trouve le résultat de
la recherche. Le dernier argument indique si la recherche doit trouver un valeur
exacte (FAUX) ou approchante (VRAI).
Bien. Faisons quelques tests.
Recherchons l'emplacement de l'article "ART-241"
Référence
|
Emplacement
|
ART-241
|
R86N1
|
Ok c'est bien ça !
Recherchons l'emplacement de l'article "ART-278"
Référence
|
Emplacement
|
ART-278
|
R82N6
|
Donnée présente en ligne 9, le balayage se faisant du haut vers le bas.
Et si la référence recherchée n'existe pas, c'est l'erreur "#N/A" qui est retournée.
Référence
|
Emplacement
|
ART-279
|
#N/A
|
La référence ART-279 n'éxiste pas en effet.
Pour ce type de recherche, on notera que l'élément recherché appartient toujours à la première colonne et que la donnée restituée se situe à sa droite. Donc, si la donnée est à gauche, il faudra la recopierr à droite avant de pouvoir l'exploiter. De plus, le fait d'indiquer le n° de colonne dans la formule est contraignant si on est amené à supprimer ou à insérer une colonne dans le tableau. Dans ce cas, tout modification du tableau de base entrainera obligatoirement une modification manuelle des formules de recherche.
Ce qui est vrai pour RECHERCHEV() l'est aussi pour RECHERCHEH()
2- La fonction RECHERCHEX()
Voyons les différents arguments nécessaires.
=RECHERCHEX(H5;Tableau1[Ref];Tableau1[Empl])
En premier lieu, dans sa formulation de base : Le premier argument correspond à la valeur recherché. Suivent la colonne dans laquelle rechercher la valeur et la colonne dans laquelle se trouve la valeur à restituer. Ni plus ni moins !
La recherche se fait comme pour RECHERCHEV(), à savoir de haut en bas et retourne la valeur dans la colonne indiquée. Nous n'avons plus à indiquer un tableau complent, de fait, la colonne des valeurs à restituer peut très bien être à gauche de la colonne de recherche. Il est même possible de dissossier la colonne de recherche de la colonne de valeurs à restituer, la seule contrainte à respecter : avoir le même nombre d'éléments dans les deux tables. Particularité : si l'élément à rechercher est dans un tableau "Office" (Par ex Tableau1[Ref]) et les valeurs à restituer présentes dans une plage de cellules (Par ex A1:A20) la restitution ne se fait pas. Mais 2 tableaux "Office" séparés avec le même nombre de ligne, la restitution est correcte.
#N/A est indiqué si aucune valeur n'est trouvée et #VALEUR si par exemple il y a une incohérence entre la plage de recherche et la plage de données à restituer (Nombre de lignes différent par exemple).
Sans toucher à la disposition des éléments du tableau la formule =RECHERCHEX(H5;Tableau1[Empl];Tableau1[Ref]) retournera bien la référence trouvée pour l'emplacement cherché !
Emplacement
|
Référence
|
R46N6
|
ART-278
|
3 autres arguments facultatifs peuvent être utilisés pour compléter la fontion RECHERCHEX()
Si_non_trouvé : Cet argument contient la valeur qui sera le résultat de la formule au cas où la valeur recherchée n'est pas trouvée. Voilà de quoi voir disparaitre les #N/A et autres #VALEUR disgracieux.
Mode_correspondance : Ici vous pouvez indiquer la manière dont
Excel doit comparer la Valeur_cherchée et les différentes valeurs
qui se trouvent dans le Tableau_recherche.
Les valeurs possibles sont:
- 0 - Correspondance exacte : Les deux valeurs doit correspondre exactement. S'il n'y a pas de correspondance exacte, le résultat de la fonction sera la valeur de l'argument Si_non_trouvé. Si celui-ci n'est pas renseigné, le résultat de la fonction sera l'erreur #N/A
- -1 - Correspondance exacte ou élément inférieur suivant : Permet de faire correspondre la Valeur_cherchée à la valeur plus petite la plus proche du Tableau_recherche. S'il n'y a pas de correspondance exacte, la fonction utilisera comme référence la valeur plus petite la plus proche de la valeur que vous cherchez. Il y aura donc toujours un résultat.
- 1 - ou élément supérieur suivant : Permet de faire correspondre la Valeur_cherchée à la valeur plus grande la plus proche du Tableau_recherche. S'il n'y a pas de correspondance exacte, la fonction utilisera comme référence la valeur plus grande la plus proche de la valeur que vous cherchez. Il y aura donc toujours un résultat.
- 2 - Correspondance de caractère générique : cette option vous permet d'utiliser les "métacaractères" (wildcards en anglais, également "caractère générique" en français) lors de la recherche de la correspondance dans le Tableau_recherche. Vous pouvez utiliser deux métacaractères: "?" qui remplace un caractère ou "*" qui remplace un nombre indéfini de caractères.
Mode_recherche : Ce dernier argument spécifie le mode de recherche à utiliser. En gros, ici, vous déterminez de quelle manière (dans quel ordre) Excel va chercher Valeur_cherchée dans le Tableau_recherche. Voici les valeurs possibles de cet argument:
- 1 - Rechercher du début vers la fin
- -1 - Rechercher de la fin vers le début
- 2 - Recherche binaire (tri croissant)
- -2 - Recherche binaire (tri décroissant)
Au final, la nouvelle fonction RECHERCHEX() remplacera avantageusement les RECHERCHEV() et RECHERCHEH() avec son mode "Exact" par défaut, sa capacité de pouvoir charcher dans une table et de faire la correspondance dans une seconde pour restituer la valeur, la valeur "si non trouvé" permettant de générer des tableaux propres. La possibilité de retrouver la valeur approchante la plus petite ou la plus grande sont un plus et surtout, s'affranchir de toute modification de la recherche en cas de suppressession/ajout de colonnes/lignes.

EXCEL
FILTRE()
La fonction FILTRE() fait partie des nouveautés d'Excel 365 qui permet de sélectionner des données dans un tableau suivant un filtre et de les restituer sous forme de tableau.

INFOS
Mentions légales
Pour la société : PCI EXPERT
Activité : Programmation Informatique (6201A)
Siège social : 21b rue des Anciennes Ecoles, 33600 PESSAC
Forme juridique : SAS
Immatriculation RCS : Bordeaux B 918 702 085