Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :WildCards dans les recherches
Cette nouvelle
astuce Excel tient à démontrer l'intérêt des
WildCards dans les recherches de données. La traduction littérale de
WildCards serait : caractères sauvages. En effet, introduits dans les expressions de recherche, ils permettent de réaliser des extractions très particulières. Parmi ces caractères les plus importants, on compte l'astérisque (*), le tilda (~) et le point d'interrogation (?).
Source et procédure
Pour démontrer leur utilisation, nous proposons d'agir à partir d'une petite source de données existante.
Nous trouvons une petite liste de données dans un tableau situé entre les colonnes B et C. La colonne B énumère les éléments à rechercher. La colonne C indique les positions respectives en ligne grâce à la
fonction Excel Ligne.
Les termes de recherche doivent être inscrits en
cellule E4. Si une concordance est trouvée, un calcul retourne la position dans le tableau source en
cellule F4. Ce calcul exploite la
fonction Excel RechercheV. La syntaxe de la formule utilisée est la suivante :
=SIERREUR(RECHERCHEV(E4; $B$4:$C$14; 2; FAUX); 'NC')
Nous recherchons le terme tapé en cellule E4 dans le tableau situé entre les cellules B4 et C14. En retour, nous récupérons l'information située en deuxième colonne (2), soit la position en ligne. Si la recherche est infructueuse, l'anomalie est gérée par la
fonction SiErreur. Pour en avertir l'utilisateur, nous inscrivons la contraction NC dans la case, NC pour Non correspondance.
Et comme vous pouvez le voir, cette recherche est parfaitement fonctionnelle. Pour le terme déjà inscrit en cellule E4, la correspondance est établie en ligne 13. Mais il s'agit d'une recherche sur un terme stricte. Nous souhaiterions la faire évoluer pour trouver les éléments contenant certains termes, commençant ou se terminant par certains mots ou encore présentant un certain nombre de caractères. Et comme vous allez le voir, grâce aux
WildCards, il n'est pas question de toucher à la syntaxe de la formule. Associés aux termes de recherche, ils vont permettre d'augmenter la puissance de la
fonction RechercheV.
Enfin, vous avez constaté que la ligne de l'élément cherché est automatiquement surlignée. C'est une
règle de mise en forme conditionnelle qui est prédéfinie sur ce petit tableau. Pour la consulter, vous devez tout d'abord sélectionner l'une des cellules du petit tableau. Ensuite, dans la section Styles du ruban Accueil, vous devez cliquer sur le
bouton Mise en forme conditionnelle. Enfin, en bas des propositions, vous devez opter pour la commande
Gérer les règles. Vous n'avez plus qu'à cliquer sur le
bouton Modifier la règle dans la boîte de dialogue pour consulter sa syntaxe.
Sa syntaxe est triviale :
=$C4=$F$4. Chaque numéro de ligne du tableau (
$C4) est comparé avec le numéro de ligne retourné par la recherche (
$F$4). Lorsque la correspondance est avérée, le format dynamique est déclenché.
- Sélectionner la case de recherche en cliquant sur sa cellule E4,
- Taper l'expression suivante : *Frites,
- Puis, valider avec le raccourci CTRL + Entrée pour conserver la cellule active,
La
fonction de recherche répond par la ligne 6. Et d'ailleurs, la
mise en forme conditionnelle confirme ce recoupement en surlignant cette même ligne. Nous isolons ainsi l'expression
Pommes ? Frites. L'astérisque représente tout type de caractère et ce, quel que soit leur nombre. En d'autres termes, cette syntaxe permet de trouver le premier terme se terminant par le
mot Frites, quelles que soient les informations saisies avant.
- En cellule E4, taper maintenant l'expression : Frites*,
En plaçant l'étoile à la fin, nous inversons le processus de recherche. Nous trouvons la première expression commençant par le
mot Frites et ce, quels que soient les caractères situés après.
C'est donc la ligne 11 qui est identifiée. Ce principe peut être décliné pour connaître toutes les expressions commençant par un mot précis et se terminant par un autre mot, quelles que soient les lettres situées au milieu de la chaîne :
Mot_debut*Mot_fin.
Nous souhaiterions maintenant trouver la première expression contenant un point d'interrogation, quelles que soient les informations placées avant et après. Pour cela, nous pourrions être tentés d'inscrire l'expression suivante en
cellule E4 :
*?*. Mais comme vous le remarquez, le résultat de la recherche ne correspond pas du tout à nos attentes. C'est le premier mot de la liste qui est considéré comme concordant. En effet, le point d'interrogation est l'un de ces
WildCards. Il désigne n'importe quel caractère. Préfixé et suffixé de l'astérisque, ce sont forcément toutes les expressions qui concordent. Et la recherche s'arrête sur la première trouvée.
Pour isoler un ou des caractères précis dans une expression, nous devons exploiter un autre
WildCard en préfixe. Il s'agit du
Tilda (~). Il indique que l'expression qui suit doit être trouvée strictement à l'identique dans la chaîne.
- En conséquence, en cellule E4, taper l'expression suivante : *~?*,
Cette fois, c'est bien la
ligne 6 qui est instantanément repérée. De la même façon, nous pourrions être tentés de trouver l'expression contenant un
astérisque et se terminant par le
mot pâtes. Et bien entendu, la syntaxe :
** pâtes, n'aboutirait pas à une recherche fructueuse. Nous devons donc de nouveau exploiter le
WilCard du
Tilda pour isoler précisément le caractère recherché.
- En cellule E4, taper la syntaxe suivante : *~**pâtes,
Nous ne nous soucions pas du début de la chaîne (*). Nous isolons explicitement l'astérisque au milieu (~*). Celui-ci peut être suivi de n'importe quel caractère (*). Mais la chaîne doit nécessairement se terminer par le
mot pâtes.
Et comme vous le voyez, c'est bien l'expression que nous recherchions qui est pointée en ligne 10.
Désormais, nous souhaiterions trouver le premier terme constitué d'un nombre précis de caractères. Nous l'avons dit tout à l'heure, le
WildCard du
point d'interrogation, représente n'importe quel caractère.
- En cellule E4, inscrire 8 points d'interrogation successifs : ????????,
C'est le
mot Fritures qui est instantanément isolé en ligne 13. Il est effectivement composé de 8 lettres.
Pour finir, nous souhaiterions isoler le terme :
salades *pâtes, dans la recherche. Nous ne pouvons pas exploiter l'expression :
salades*pâtes. C'est le premier terme qui serait retourné. Nous pourrions exploiter la syntaxe précédente avec le
tilda en préfixe de l'
astérisque. Mais nous cherchons une chaîne commençant par le
mot salades, se terminant par le
mot pâtes et qui composée de trois caractères intercalés. Donc une autre méthode, exploitant le point d'interrogation est possible.
- En cellule E4, saisir la syntaxede recherche suivante : salades???pâtes,
Et comme vous le voyez, c'est bien la
ligne 10 qui est interceptée et non celle du dessus. Ces
WildCards combinés permettent donc d'augmenter les possibilités et prouesses des recherches engagées avec les
fonctions Excel.