Comment créer une barre de recherche sur Excel

Publié initialement sur: https://www.formuleexcel.com/comment-creer-une-barre-de-recherche-sur-excel/

Aujourd’hui nous allons faire l’exercice de créer une barre de recherche sur Excel. Nous allons travailler sur la liste des pays du monde: Comment rechercher tous les pays contenant certains caractères et retourner la liste des résultats? De plus nous allons faire cela uniquement avec des formules, sans VBA.

Le fichier final est disponible gratuitement ici:

Télécharger le fichier Barre de Recherche gratuitement

Comment créer une barre de recherche sur Excel?

Tout d’abord vous avez besoin de la liste de tous les pays du monde (Ne vous inquiétez pas, dans le fichier Excel que je vous fournis à la fin, vous aurez accès à la liste de 228 pays et toutes les formules du fichier). Nous allons rentrer cette liste dans les cellules F4:F231

Trouver les résultats correspondants dans la liste

Pour trouver tous les résultats correspondants dans la liste de pays, nous allons utiliser la fonction CHERCHE. Cette fonction permet de rechercher une chaine de caractères dans une cellule donnée, et retourne le chiffre correspondant à sa position si elle est trouvée. Sinon CHERCHE retourne une erreur. Nous allons filtrer les erreurs en utilisant la fonction SIERREUR, qui remplacera toutes les erreurs par du vide ce qui est visuellement plus lisible.

Commençons par rentrer la formule =SIERREUR(CHERCHE($C$3;F4);«  ») en F4

comment utiliser la formule Cherche

Nous voyons que pour la recherche de « ne », la formule renvoie 8 pour l’Allemagne et l’Argentine ce qui correspond à la position de la chaine de caractère « ne » dans ces mots. Lorsque la chaine « ne » n’est pas trouvée, CHERCHE renvoie une erreur, notre formule renvoie donc un espace grâce à SIERREUR.

Choisir l'ordre des résultats

Nous avons déjà tous les résultats de recherche, il faut maintenant les trier. Pour faire cela nous allons attribuer à chaque résultat un numéro unique. Nous allons nous baser sur la position calculée précédemment, qui indique à quel index se trouve recherche dans le résultat.

Le problème est que cette position n’est pas unique (on a vu que Allemagne et Argentine avaient le même numéro). C’est problématique car nous voulons renvoyer tous les pays pour cette position, et si le numéro n’est pas unique nous ne pourrons en renvoyer qu’un seul. Pour transformer en un nombre unique, nous allons ajouter le numéro de la ligne divisé par 10000, ce qui rendra forcément le nombre unique car nous n’avons que 228 pays.

Nous allons don rentrer en H4: =SIERREUR(G4+LIGNE(G4)/10000;«  »)

Comment attribuer un numero unique

Nous avons rajouté une utilisation de SIERREUR pour remplacer les erreurs par des blancs. Nous voyons que l’Argentine a désormais le numéro unique 8,0015

Maintenant que chaque résultat a un numéro unique, nous allons ordonner ces résultats et affecter à chacun une position dans les résultats de recherche. Pour cela nous utilisons la formule RANG, qui renvoie justement la position d’un chiffre dans une liste de données. La formule que nous allons rentrer en E4 est =SIERREUR(RANG(H4;$H$4:$H$231;1);«  »)

Nous voyons donc que cette fonction donne le rang n°10 à l’Allemagne.

Calculer le rang dans une plage de données

Afficher une liste ordonnée des résultats

Nous pouvons maintenant afficher simplement les résultats en utilisant la fonction RECHERCHEV. Pour chaque numéro de position, nous irons chercher le pays dont le rang correspond à cette position. Nous allons donc utiliser en C6 la formule =SIERREUR(RECHERCHEV(B6;$E$3:$F$232;2;FAUX);"")

recherchev

 

Notre outil de recherche est terminé! Nous pouvons noter une propriété intéressante qui est due à l’utilisation de la fonction CHERCHE: l’utilisation des jokers. Nous pouvons ainsi utiliser les jokers ? et * qui sont vérifiés respectivement par n’importe quel caractère unique et par n’importe quelle chaine de caractères. Par exemple si l’on cherche la liste des pays qui contient la lettre A, puis n’importe quel lettre unique, puis un B, il suffit d’effectuer sur notre outil la recherche A?B

Utilisation des joers das une barre de recherche Excel

Téléchargez le fichier d'exemple gratuitement

Télécharger le fichier Barre de Recherche gratuitement