Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :RechercheX partielle avec WildCards
Nous avions déjà appris à réaliser des recherches à partir de
termes partiels, grâce aux
WildCards ou
caractères génériques. Ici, nous allons découvrir que nous pouvons les employer dans la
fonction RechercheX, avec la plus grande simplicité.
Sur l'exemple illustré par la capture, dans une cellule intitulée "Cherché", l'utilisateur tape un mot potentiellement inclus dans un terme de la première colonne d'un tableau. Aussitôt, grâce à la
fonction RechercheX et à un
caractère générique, l'expression complète et sa position sont extraites dans des cellules voisines.
Classeur Excel à télécharger
Pour cette nouvelle démonstration sur la
fonction RechercheX, nous suggérons de travailler à partir d'un classeur offrant ces termes incluant des mots à utiliser pour les recherches.
Nous retrouvons bien la liste des expressions en
colonne B avec leurs positions respectives en
colonne C voisine. Le terme partiel pour la recherche doit être inscrit en
cellule E4. Pour l'instant, il s'agit du mot
Maison. Les informations sur la première expression hébergeant le ou les mots cherchés doivent être extraites en
cellules F4 et
G4.
Trouver un morceau
Nous avons déjà exploité les
WildCards pour réaliser des recherches très particulières. Avec celui de l'
astérisque (*) ou de l'étoile si vous préférez, en encadrant le terme cherché, il est possible de faire comprendre à la
fonction rechercheX qu'il est question de trouver toute expression contenant ce terme, quelle que soit sa position dans la chaîne.
- Cliquer sur la cellule F4 pour la sélectionner,
- Taper le symbole égal (=) pour débuter la construction de la formule,
- Inscrire la fonction d'extraction suivie d'une parenthèse, soit : RechercheX(,
Le premier paramètre attend la valeur de l'
élément cherché pour produire l'
extraction complète de la première correspondance trouvée. Et comme nous l'avons dit, cette valeur est incomplète. C'est là qu'entre en jeu le
Wildcard de l'astérisque.
- Taper le symbole de l'étoile entre guillemets, soit : "*",
- Le concaténer avec le terme cherché, soit : & E4,
- Concaténer de nouveau ce terme avec le symbole de l'étoile, soit : & "*",
Le terme cherché est ainsi encadré de deux étoiles. Dans le langage des
caractères génériques, cela signifie que la recherche doit s'exercer sur ce mot, peu importe ce qui se trouve avant ou après.
La plage de recherche
Nous devons maintenant indiquer à la fonction dans quelle colonne ce terme partiel doit être trouvé.
- Taper un point-virgule (;) pour passer dans l'argument du tableau de recherche,
- Désigner toutes les expressions en sélectionnant la plage de cellules B4:B14,
La plage d'extraction
C'est maintenant que nous allons découvrir l'intérêt d'une
fonction matricielle telle que
RechercheX. Contrairement à une fonction classique qui va retourner un résultat à reproduire sur les lignes et les colonnes pour obtenir les autres données, la
fonction RechercheX est capable de renvoyer toutes les informations d'une rangée à la fois. Pour cela, dans l'argument du
tableau de retour, il suffit de désigner une plage non pas d'une colonne mais de toutes les colonnes concernées.
- Taper un point-virgule (;) pour passer dans l'argument du tableau renvoyé,
- Désigner les deux colonnes du tableau de recherche en sélectionnant la plage B4:C14,
Recherche approximative
La
fonction RechercheX ne raisonne pas naturellement sur des
expressions partielles à trouver. Mais si nous avons la décence de le lui demander gentiment, elle peut le faire. Et pour cela, c'est son cinquième argument qui entre en jeu.
- Taper deux points-virgules pour ignorer le quatrième paramètre de la fonction RechercheX,
Il concerne l'action à entreprendre lorsqu'aucune correspondance n'est trouvée. Nous y reviendrons à l'occasion des volets à suivre. De fait, nous atteignons directement le cinquième argument de la
fonction RechercheX. Il concerne le
mode de correspondance. Et si vous analysez les valeurs permises et retransmises par l'infobulle qui se déclenche, vous constatez qu'il est possible de faire agir cette
fonction matricielle avec les
WildCards.
- Inscrire le chiffre 2 pour réaliser une correspondance en considérant les caractères génériques,
- Fermer la parenthèse de la fonction RechercheX puis valider la formule avec la touche Entrée,
Comme vous pouvez l'apprécier, ce n'est pas un mais ce sont deux résultats qui sont retournés. Il s'agit des informations complètes de la ligne hébergeant le terme partiel cherché et trouvé.
Bien sûr, si vous changez le
terme de recherche en
cellule E4, par exemple
Salades à la place de
Maison et que vous validez par la touche Entrée du clavier, vous constatez que l'
extraction approchante est parfaitement exécutée par la
fonction RechercheX armée du
Wildcard de l'astérisque. Dans le même temps, vous remarquez qu'une
mise en forme conditionnelle se déclenche sur le tableau pour repérer en couleur la ligne des données extraites.
Cependant et vous l'avez constaté, bien que toutes les informations de la première ligne concordante soient extraites, d'ailleurs elles auraient pu s'étaler sur un plus grand nombre de colonnes, les autres contenant ce même terme sont ignorées.
Pour pallier cette déficience, nous aurions pu exploiter la
fonction Filtre, dont nous venons de clore la série, à l'aide d'une technique découverte récemment, comme suit :
=FILTRE(B4:C14; ESTNUM(CHERCHE(E4; B4:B14)))
Dans ce raisonnement, il n'est pas question de
Wildcard. Nous exploitons la
fonction de recherche Cherche pour trouver le
terme incomplet dans toutes les expressions de la
matrice B4:B14. C'est la fonction
logique EstNum qui indique à la
fonction Filtre si une position est trouvée et donc si la ligne en cours d'analyse peut être extraire. C'est ainsi que nous livrons tous les résultats.
Mais ne vous y trompez pas, la
fonction RechercheX ne marche pas dans l'ombre de la
fonction Filtre. Nous n'en sommes qu'au début de la découverte. Dans de maints contextes, elle apporte des solutions époustouflantes là où la
fonction Filtre se trouvera dépourvue. Les rendez-vous sont donc pris pour de prochaines aventures.