Cette fonction est une fonction de recherche. Elle sert à
retrouver un ou plusieurs caractères (mot ou plusieurs mots) demandés par
l'utilisateur dans la chaîne de caractères spécifiée (une phrase ou un
texte).
Cette fonction fait partie de la catégorie "Texte" des fonctions
avancées d'Excel.
Pour comprendre la pertinence de cette fonction, nous allons travailler sur un
exemple simple que vous pouvez télécharger en cliquant sur le lien : exemple
Exemple
Notre test relatif à cette fonction consiste à rechercher les recettes de
desserts qui contiennent les ingrédients demandés par l'utilisateur. J'ai
récupéré les ingrédients des desserts sur l'excellent site http//:www.cuisineaz.com
dans lequel vous retrouverez la totalité de la recette.
Dans l'exemple à télécharger, chaque nom de dessert correspond à une liste
d'ingrédients qui sont entrés dans une cellule. C'est dans ces cellules que
la fonction "Cherche" fera sa recherche. En haut de la feuille,
l'utilisateur entre ses critères de recherche (3 maximum ici).
Vous pouvez cliquer sur l'image suivante pour avoir un aperçu de la table de
données et de la zone de recherche :
image
1
Comme pour la fonction "RechercheV", nous avons deux zones : l'une
est destinée à la spécification des critères de recherche, l'autre est la
base de données dans laquelle se trouve l'information.
1) La zone de recherche
La zone de recherche donne la possibilité à l'utilisateur d'entrer 3
critères de recherche différents : le nom du dessert (tarte, gâteau,
brioche ...etc), et 2 ingrédients spécifiques (chocolat, fraise ..etc). Il
est clair que si vous entrez "sucre" comme critère, toutes les
recettes répondront positivement à ce critère.
Les critères de recherche correspondent aux cellules A2 ("Nom du
dessert") B2 ("Ingrédient 1") et C2 ("Ingrédient
2")
2) La base de données
Cette table contient les recettes et les noms des desserts. C'est aussi
dans cette table que seront renvoyés les résultats de la recherche. Les 2
premières colonnes contiennent les éléments qui seront soumis à la
recherche ("Nom dessert" et "Recette").
La colonne "Recette" (plage B4:B102) sera soumise aux
critères entrés en A2, B2 et C2. La recette contient outre les ingrédients
le nom du dessert.
Voici le plan de notre test :
Les cellules C5, D5 et E5 accueilleront les formules de recherche lesquelles
seront recopiées sur l'ensemble de la colonne.
J'utilise la fonction de "SI" imbriquée à la fonction
"CHERCHE", je vous invite donc à consulter la page relative à la
fonction "SI".
1) Dans la cellule C5
Si A2 (critère "Nom du dessert") n'est pas vide
(A2<>"")
alors Cherche A2 (critère "Nom du dessert") dans la cellule B5
(Recette) à compter du premier caractère (à partir de la gauche) contenu
dans cette cellule
sinon C5 = "Pas de critère cherché"
2) Dans la cellule D5
Si B2 (critère "Nom du dessert") n'est pas vide
(B2<>"")
alors Cherche B2 (critère "Nom du dessert") dans la cellule B5
(Recette) à compter du premier caractère (à partir de la gauche) contenu
dans cette cellule
sinon D5 = "Pas de critère cherché"
3) Dans la cellule E5
Si C2 (critère "Nom du dessert") n'est pas vide (C2<>"")
alors Cherche C2 (critère "Nom du dessert") dans la cellule B5
(Recette) à compter du premier caractère (à partir de la gauche) contenu
dans cette cellule
sinon E5 = "Pas de critère cherché"
Dans ces 3 cas (si un critère est entré), si le critère est trouvé, il
sera renvoyé un chiffre représentant le quantième caractère de la chaîne
testée à partir duquel le critère cherché répertorié. Autrement il est
renvoyé le message d'erreur #VALEUR!
Entrons les formules dans les cellules C5, D5 et E5 (en suivant le plan
de test)
A) en C5
- Cliquez sur l'icône fx dans Excel (ou Menu/Insertion/Fonction), puis
choisissez dans la liste intitulée "Catégorie de fonctions", la
catégorie "Logique".
- Double-cliquez sur "Si"
1)La ligne appelée "Test logique" correspond à
"Si", qui est la première partie de notre test. Dans cette
ligne, il faut entrer : A2<>""
Après vous être positionné dans cette première ligne, vous pouvez soit
taper A2 (à la main), soit cliquer sur la cellule testée. Je vous conseille
cette seconde manipulation. La cellule devant être recopiée, appuyez sur la
touche F4. A2 se transforme en A$2$
2)La ligne appelée "Valeur_si_vrai" correspond à
"Alors"; c'est l'opération qui sera effectuée si la condition
spécifiée à la première ligne se vérifie.
Pour imbriquer la fonction "CHERCHE", positionnez-vous sur la
2ème ligne, puis cliquez sur le filtre, à gauche de la barre de formule,
enfin choisissez "CHERCHE"; s'il n'apparaît pas, cliquer (toujours
dans le filtre) sur "Autres fonctions", puis "Texte", et
enfin sur "Cherche".
Une nouvelle boite de dialogue "Cherche", vierge, va apparaître, et
remplacer la précédente.
image2
a) Après vous être positionné sur la 1ère ligne "Texte_cherché",
cliquez sur la cellule A2 (critère de recherche)
b) La 2nde ligne "Texte" correspond à la chaîne
de caractère testée. Après vous être positionné sur cette ligne, cliquez
sur B5 (contenant la recette et le nom du dessert)
c) Dans la 3ème ligne, vous spécifiez à compter de quel
caractère la recherche doit s'effectuer. Ici, la recherche commence à
compter du 1er caractère, il faut entrez 1
Nous devons passer maintenant au "sinon" de notre plan de test. Pour
cela il faut retourner dans la boîte de dialogue "SI".
Si à ce stade vous cliquez sur "OK", Excel considère que vous avez
terminé, et ferme donc toute boîte de dialogue. Vous vous retrouverez alors
avec une formule inachevée. Afin de retourner au "SI", vous allez
vous positionner dans la barre de formule, après la dernière parenthèse.
Vous vous retrouvez dans la boîte de dialogue "SI", avec une 1ère
et 2nde lignes achevées.
Vous constatez qu'Excel a mis en couleur les parenthèses de chaque
fonction imbriquée. C'est avec ces couleurs que vous pourrez voir à quel
stade de la formule vous vous trouvez.
3)La ligne appelée "Valeur_si_faux" correspond à
"Sinon"; c'est le résultat qui apparaîtra si la valeur spécifiée
à la première ligne n'est pas vérifiée. Dans cette ligne, il faut entrer :
Pas de critère cherché
Terminez l'opération en cliquant sur "OK"
B) en D5
1)La ligne appelée "Test logique" correspond à
"Si", qui est la première partie de notre test. Dans cette
ligne, il faut entrer : B2<>""
Après vous être positionné dans cette première ligne, vous pouvez soit
tapez B2 (à la main), soit cliquez sur la cellule testée. Je vous conseille
cette seconde manipulation. La cellule devant être recopiée, appuyez sur la
touche F4. B2 se transforme en B$2$
2)La ligne appelée "Valeur_si_vrai" correspond à
"Alors"; c'est l'opération qui sera effectuée si la condition
spécifiée à la première ligne se vérifie.
Pour imbriquer la fonction "CHERCHE", positionnez-vous sur la
2ème ligne, puis cliquez sur le filtre, à gauche de la barre de formule,
enfin choisissez "CHERCHE"; s'il n'apparaît pas, cliquer (toujours
dans le filtre) sur "Autres fonctions", puis "Texte", et
enfin sur "Cherche".
Une nouvelle boite de dialogue "Cherche", vierge, va apparaître, et
remplacer la précédente.
a) Après vous être positionné sur la 1ère ligne "Texte_cherché",
cliquez sur la cellule B2 (critère de recherche)
b) La 2nde ligne "Texte" correspond à la chaîne
de caractère testée. Après vous être positionné sur cette ligne, cliquez
sur B5 (contenant la recette et le nom du dessert)
c) Dans la 3ème ligne, vous spécifiez à compter de quel
caractère la recherche doit s'effectuer. Ici, la recherche commence à
compter du 1er caractère, il faut entrez 1
3)La ligne appelée "Valeur_si_faux" correspond à
"Sinon"; c'est le résultat qui apparaîtra si la valeur spécifiée
à la première ligne n'est pas vérifiée. Dans cette ligne, il faut entrer :
Pas de critère cherché
C) en E5
1)La ligne appelée "Test logique" correspond à
"Si", qui est la première partie de notre test. Dans cette
ligne, il faut entrer : C2<>""
Après vous être positionné dans cette première ligne, vous pouvez soit
tapez C2 (à la main), soit cliquez sur la cellule testée. Je vous conseille
cette seconde manipulation. La cellule devant être recopiée, appuyez sur la
touche F4. C2 se transforme en C$2$
2)La ligne appelée "Valeur_si_vrai" correspond à
"Alors"; c'est l'opération qui sera effectuée si la condition
spécifiée à la première ligne se vérifie.
Pour imbriquer la fonction "CHERCHE", positionnez-vous sur la
2ème ligne, puis cliquez sur le filtre, à gauche de la barre de formule,
enfin choisissez "CHERCHE"; s'il n'apparaît pas, cliquer (toujours
dans le filtre) sur "Autres fonctions", puis "Texte", et
enfin sur "Cherche".
Une nouvelle boite de dialogue "Cherche", vierge, va apparaître, et
remplacer la précédente.
a) Après vous être positionné sur la 1ère ligne "Texte_cherché",
cliquez sur la cellule C2 (critère de recherche)
b) La 2nde ligne "Texte" correspond à la chaîne
de caractère testée. Après vous être positionné sur cette ligne, cliquez
sur B5 (contenant la recette et le nom du dessert)
c) Dans la 3ème ligne, vous spécifiez à compter de quel
caractère la recherche doit s'effectuer. Ici, la recherche commence à
compter du 1er caractère, il faut entrez 1
3)La ligne appelée "Valeur_si_faux" correspond à
"Sinon"; c'est le résultat qui apparaîtra si la valeur spécifiée
à la première ligne n'est pas vérifiée. Dans cette ligne, il faut entrer :
Pas de critère cherché
Dans ces 3 cas, il vous faudra recopier la formule sur toutes les colonnes
concernées (C5:C102;D5:D102;E5:E102)
Testez les formules en entrant 3 critères, par exemples : gâteau, banane et
farine.
Lorsque le nom ou l'ingrédient est trouvé, un chiffre s'affiche dans les
plages de cellules contenant les formules. C'est le quantième caractère de
la chaîne à partir duquel figure le critère cherché.
J'ai placé un filtre dans la table de données, afin de trouver plus
rapidement la recette correspondant aux 3 critères entrés (ou omis). Pour
filtrer la recette correspondant aux critères spécifiés : allez dans le
filtre (seulement les colonnes pour lesquelles un critère a été entré),
choisissez "Personnalisé", et choisissez "Supérieur ou
égal" et entrez "1".
Dans la page applications, nous verrons comment importer ces solutions dans un
autre tableau sans passer par le filtre.
|
|