Trouver la position d’un caractère dans une cellule

Dernière mise à jour le 19/02/2024
Temps de lecture : 2 minutes

Comment trouver la position d'un caractère dans une cellule ? Deux fonctions Excel sont à votre disposition ; CHERCHE et TROUVE.

Paramètres des fonctions CHERCHE et TROUVE

Les fonctions CHERCHE et TROUVE retournent la position d'un caractère à l'intérieur d'une cellule. Les fonctions nécessitent 2 paramètres (et un troisième optionnel)

  1. Le ou les caractères à rechercher

    Vous pouvez rechercher une lettre, un nombre, un symbole ou un texte

  2. Le Texte contenant les caractères recherchés

    Généralement il faut indiquer la cellule qui contient le texte

  3. [optionnel] La position où commencer la recherche

    Si omis, la recherche commence à la première position

La différence entre ces deux fonctions c'est la casse (différence entre les majuscules et minuscules)

  • TROUVE est sensible à la casse
  • CHERCHE ne fait pas de différence entre les caractères

Utilisation des fonctions CHERCHE et TROUVE

Généralement, trouver la position d'un caractère c'est nécessaire pour découper une chaîne de caractères. C'est ainsi qu'il fallait travailler pendant des années.

MAIS, de nouvelles fonctions Excel, disponiblent avec Excel 365, permettent de travailler sur vos chaînes de caractères avec beaucoup plus de facilités.

Exemple d'utilisation

Mais si vous ne travaillez pas avec la version d'Excel 365, voici comment il faut procéder pour découper un texte.

Dans l'exemple suivant, nous voulons extraire le nom de famille. Pour cela, il nous faut trouver la position de la première virugle dans chaque cellule/

=CHERCHE("/";A2)

Position de la virgule dans un texte

Pour extraire la partie gauche, nous allons utiliser la fonction GAUCHE

=GAUCHE(A2;CHERCHE(",";A2)-1)

Extraire le nom avant la virgule

Le -1 est nécessaire pour ne pas renvoyer la virgule. Autrement, nous aurions retourné MILLET,

Pourquoi les fonctions peuvent renvoyer des erreurs ?

Le problème avec les fonctions CHERCHE et TROUVE c'est que si le caractère à rechercher n'est pas dans le texte de recherche, la fonction retourne une erreur. Pour contourner le problème, il suffit d'inclure la fonction CHERCHE dans une fonction SIERREUR.

=SIERREUR(CHERCHE(",";A2);"NBCAR(A2)"")

Conclusion

Si vous travaillez avec Excel 365, vous avez tout intérêt à utiliser les nouvelles fonctions.

  • Elles sont plus simples à coder
  • Elles sont plus performantes
  • Elles offrent d'avantage de possibilités d'extraction

7 Comments

  1. Golden
    29/08/2021 @ 21:31

    Bonjour,
    J'aurais besoin de votre aide pour avoir une formule que je n'arrive pas à avoir jusqu'à maintenant.
    Je veux bien avoir le dernier numéro après le 3ième point soustrait de 2.
    Par exemple la valeur sur la cellule A = 192.168.1.120 je veux bien qu'elle soit 192.168.1.118 dans la cellule B
    Sachant que le numéro après le 3ième point peut contenir un chiffre, deux chiffres, ou 3 chiffres.
    Merci d'avance

    Reply

    • Frédéric LE GUEN
      05/09/2021 @ 10:25

      Le plus simple c'est d'appliquer une transformation avec Power Query. L'option "Séparer sur un délimiteur" va parfaitement vous aider

      Reply

  2. Valer
    20/08/2020 @ 05:39

    Bonjour,
    j'aurais besoin de votre aide pour réaliser la suivante:
    1-Ouvrire un Tableau Excel, où chaque cellule contient un nombre de 3 chiffres
    2-Selectionner une partie ou tout le Tableau
    3-Lancer une recherche de comparaison des cellules entres elles dont le résultat devra afficher toutes les combinaisons possibles.

    Exemple 1, s'il existe deux cellules ou plus, contenant 123, 132, 321...,alors Resultat: l'une d'elles s'affiche.
    Exemple 2: s'il existe deux cellules ou plus, contenant 121, 211..., alors Resultat: l'une d'elles s'affiche.
    Exemple 3: Si le contenue d'une cellule est unique, alors rien ne s'affiche.
    Merci déjà.

    Reply

  3. Jean-Philippe
    21/07/2019 @ 23:17

    Bonjour je n'arrive pas à extraire la ville d'un texte de type "1 Rue Charles Garnier 93400 SAINT-OUEN" je pensai utiliser le 1e espace en partant de la droite du texte mais une formule comme =DROITE(R11;CHERCHE(" ";R11)-1) ne fonctionne pas.
    Merci pour votre aide

    Reply

    • Frédéric LE GUEN
      22/07/2019 @ 07:12

      Bonjour,
      Essayez d'utiliser le remplissage instantané, c'est exactement ce qu'il vous faut dans ce cas de figure

      Reply

  4. Anonyme
    19/05/2013 @ 08:06

    =GAUCHE(A2;CHERCHE("/";A2))-1
    sinon on a le / avec le numéro de téléphone

    Reply

    • Clovis Rabut
      23/01/2019 @ 10:26

      Merci beaucoup.
      je me creusais la tête pour palier à cela 🙂

      Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Microsoft MVP 2024

Newsletter

1 fois par mois :
Astuces et quiz

    Nous ne vous enverrons pas de spam. Vous pouvez vous désabonner à tout moment.

    Trouver la position d’un caractère dans une cellule

    Reading time: 2 minutes
    Dernière mise à jour le 19/02/2024

    Comment trouver la position d'un caractère dans une cellule ? Deux fonctions Excel sont à votre disposition ; CHERCHE et TROUVE.

    Paramètres des fonctions CHERCHE et TROUVE

    Les fonctions CHERCHE et TROUVE retournent la position d'un caractère à l'intérieur d'une cellule. Les fonctions nécessitent 2 paramètres (et un troisième optionnel)

    1. Le ou les caractères à rechercher

      Vous pouvez rechercher une lettre, un nombre, un symbole ou un texte

    2. Le Texte contenant les caractères recherchés

      Généralement il faut indiquer la cellule qui contient le texte

    3. [optionnel] La position où commencer la recherche

      Si omis, la recherche commence à la première position

    La différence entre ces deux fonctions c'est la casse (différence entre les majuscules et minuscules)

    • TROUVE est sensible à la casse
    • CHERCHE ne fait pas de différence entre les caractères

    Utilisation des fonctions CHERCHE et TROUVE

    Généralement, trouver la position d'un caractère c'est nécessaire pour découper une chaîne de caractères. C'est ainsi qu'il fallait travailler pendant des années.

    MAIS, de nouvelles fonctions Excel, disponiblent avec Excel 365, permettent de travailler sur vos chaînes de caractères avec beaucoup plus de facilités.

    Exemple d'utilisation

    Mais si vous ne travaillez pas avec la version d'Excel 365, voici comment il faut procéder pour découper un texte.

    Dans l'exemple suivant, nous voulons extraire le nom de famille. Pour cela, il nous faut trouver la position de la première virugle dans chaque cellule/

    =CHERCHE("/";A2)

    Position de la virgule dans un texte

    Pour extraire la partie gauche, nous allons utiliser la fonction GAUCHE

    =GAUCHE(A2;CHERCHE(",";A2)-1)

    Extraire le nom avant la virgule

    Le -1 est nécessaire pour ne pas renvoyer la virgule. Autrement, nous aurions retourné MILLET,

    Pourquoi les fonctions peuvent renvoyer des erreurs ?

    Le problème avec les fonctions CHERCHE et TROUVE c'est que si le caractère à rechercher n'est pas dans le texte de recherche, la fonction retourne une erreur. Pour contourner le problème, il suffit d'inclure la fonction CHERCHE dans une fonction SIERREUR.

    =SIERREUR(CHERCHE(",";A2);"NBCAR(A2)"")

    Conclusion

    Si vous travaillez avec Excel 365, vous avez tout intérêt à utiliser les nouvelles fonctions.

    • Elles sont plus simples à coder
    • Elles sont plus performantes
    • Elles offrent d'avantage de possibilités d'extraction

    Newsletter

    1 fois par mois :
    Astuces et quiz

      Nous ne vous enverrons pas de spam. Vous pouvez vous désabonner à tout moment.

      7 Comments

      1. Golden
        29/08/2021 @ 21:31

        Bonjour,
        J'aurais besoin de votre aide pour avoir une formule que je n'arrive pas à avoir jusqu'à maintenant.
        Je veux bien avoir le dernier numéro après le 3ième point soustrait de 2.
        Par exemple la valeur sur la cellule A = 192.168.1.120 je veux bien qu'elle soit 192.168.1.118 dans la cellule B
        Sachant que le numéro après le 3ième point peut contenir un chiffre, deux chiffres, ou 3 chiffres.
        Merci d'avance

        Reply

        • Frédéric LE GUEN
          05/09/2021 @ 10:25

          Le plus simple c'est d'appliquer une transformation avec Power Query. L'option "Séparer sur un délimiteur" va parfaitement vous aider

          Reply

      2. Valer
        20/08/2020 @ 05:39

        Bonjour,
        j'aurais besoin de votre aide pour réaliser la suivante:
        1-Ouvrire un Tableau Excel, où chaque cellule contient un nombre de 3 chiffres
        2-Selectionner une partie ou tout le Tableau
        3-Lancer une recherche de comparaison des cellules entres elles dont le résultat devra afficher toutes les combinaisons possibles.

        Exemple 1, s'il existe deux cellules ou plus, contenant 123, 132, 321...,alors Resultat: l'une d'elles s'affiche.
        Exemple 2: s'il existe deux cellules ou plus, contenant 121, 211..., alors Resultat: l'une d'elles s'affiche.
        Exemple 3: Si le contenue d'une cellule est unique, alors rien ne s'affiche.
        Merci déjà.

        Reply

      3. Jean-Philippe
        21/07/2019 @ 23:17

        Bonjour je n'arrive pas à extraire la ville d'un texte de type "1 Rue Charles Garnier 93400 SAINT-OUEN" je pensai utiliser le 1e espace en partant de la droite du texte mais une formule comme =DROITE(R11;CHERCHE(" ";R11)-1) ne fonctionne pas.
        Merci pour votre aide

        Reply

        • Frédéric LE GUEN
          22/07/2019 @ 07:12

          Bonjour,
          Essayez d'utiliser le remplissage instantané, c'est exactement ce qu'il vous faut dans ce cas de figure

          Reply

      4. Anonyme
        19/05/2013 @ 08:06

        =GAUCHE(A2;CHERCHE("/";A2))-1
        sinon on a le / avec le numéro de téléphone

        Reply

        • Clovis Rabut
          23/01/2019 @ 10:26

          Merci beaucoup.
          je me creusais la tête pour palier à cela 🙂

          Reply

      Laisser un commentaire

      Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

      Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.