Cet article va vous décrire la technique pour effectuer une recherche partielle avec la fonction FILTRE d'Excel.
La fonction FILTRE
La fonction FILTRE d'Excel est l'une des fonctions les plus utilisées. Elle permet de retourner autant de valeurs qui correspondent à un critère de sélection. Comme c'est le cas dans cette exemple pour retourner les salariés en congé à une date donnée.
Faire une recherche partielle avec la fonction FILTRE
Pour faire une recherche partielle avec la fonction FILTRE, vous ne pouvez pas utiliser les métacaractères comme * ou ? comme vous pouvez le faire avec les fonctions NB.SI, SOMME.SI ou RECHERCHEX. Alors comment contourner le problème ?
Critère VRAI avec une fonction FILTRE
Le point de départ, c'est de bien comprendre comment se construit une fonction FILTRE. Le second argument de la fonction en en fait un simple test logique. Quand ce test retourne VRAI, la ligne est filtrée.
Donc ce que nous allons faire, c'est créer un test que va retourner VRAI quand nous avons le mot "Pierre" dans le prénom.
La fonction CHERCHE
La fonction CHERCHE va nous permettre de ramener la position d'un ou plusieurs caractères dans un texte. Appliqué à notre exemple, nous allons simplement écrire.
- Le problème c'est que quand la chaîne n'est pas trouvée, la fonction retourne une erreur.
- De plus, nous n'avons pas de résultat VRAI ou FAUX
Faire un test avec la fonction ESTNUM
Pour corriger les deux remarques précédentes, nous allons utiliser la fonction ESTNUM.
- Cette fonction va tester si le résultat est numérique ou pas
- Si c'est un nombre, la fonction va renvoyer VRAI
- Si c'est du texte ou une erreur, la fonction va renvoyer FAUX
=ESTNUM(CHERCHE("Pierre";A2))
Remplacer ce test dans la fonction FILTRE
Pour terminer, il suffit de remplacer dans la fonction FILTRE le critère de sélection par la formule précédente
Faire un test "Commence par"
Dans notre première formule, nous retournons toutes les situations où nous trouvons le mot "Pierre". Maintenant, pour ne retourner que les cas où le mot Pierre est au début de la cellule nous allons transformer le critère de sélection
- Le test est assez simple à construire. Quand le mot recherché est au début de la chaîne de caractère, la fonction CHERCHE va forcément retourner 1
- Mais il faut aussi prendre en compte les cas où la fonction CHERCHE va retourner une erreur.
Recherche partielle "Se termine par"
Le test est plus compliqué.
- Il faut prendre en compte le nombre de caractères à tester
- Et qu'il faut retrancher du nombre total de caractères de la chaîne
- Ce résultat est à comparer avec le résultat de la fonction CHERCHER