Extraire les chiffres d’une cellule

Temps de lecture : 3 minutes

Cet article va vous montrer comment extraire tous les chiffres d'une cellule contenant et des chiffres et des lettres.

Pour cela, nous allons nous baser sur les nouvelles fonctions de Excel 365 : FILTRE et SEQUENCE.

Extraire les chiffres

Logique utilisée pour créer la fonction

Pour pouvoir extraire les nombres et les lettres d'une même cellule, nous n'avons d'autre choix que de découper chaque élément de la cellule en élément unique.

  1. Ce travail est rendu possible grâce à la nouvelle fonction SEQUENCE et de la fonction STXT.
  2. Ensuite, nous réaliserons un test pour savoir si chacun de ces caractères est un nombre ou pas.
  3. Enfin, quand le test est vrai, nous conservons uniquement les nombres.

Etape 1 : Extraire chaque caractère de la cellule

La fonction STXT vous permet d'extraire une sous-partie d'une chaîne de caractères. Associée à la fonction SEQUENCE, vous créez un tableau dans lequel chaque cellule représentera un des caractères de la cellule comme cela a été expliqué dans cet article.

=STXT(A2,SEQUENCE(,NBCAR(A2)),1)

Extraire chaque caractere de la cellule

Etape 2 : Test pour savoir si le contenu est numérique ou pas

Ensuite, nous devons effectuer un test sur chacune des cellules pour savoir si le contenu est numérique ou pas.

Alors bien sûr ici, l'utilisation de la fonction ESTNUM Semble logique. Pour autant, à ce stade, chacune des cellules contient du texte.

=ESTNUM(STXT(A2,SEQUENCE(,NBCAR(A2)),1))

Tous les caracteres sont du texte

Nous devons donc au préalable convertir chacune des cellules en valeur numérique, si nécessaire. Grâce à la fonction CNUM, cette conversion est automatique. Grâce à la formule suivante on construit notre test correctement.

=ESTNUM(CNUM(STXT(A2,SEQUENCE(,NBCAR(A2)),1)))

Test pour detecter les nombres dans les cellules

Etape 3 : Isoler seulement les nombres

Maintenant, pour regrouper uniquement les nombres, donc là où le test est VRAI, il suffit d'utiliser la fonction FILTRE.

Donc, nous devons écrire comme liste à filtrer, le découpage de notre cellule (première formule de cet article) et comme critère de filtrage, le test sur les nombres.

=FILTRE(CNUM(STXT(A2,SEQUENCE(,NBCAR(A2)),1)),ESTNUM(CNUM(STXT(A2,SEQUENCE(,NBCAR(A2)),1))))

Formule pour ne conserver que les chiffres

Etape 4 : Regrouper les chiffres ensemble

Enfin, il ne reste plus qu'à regrouper tous les nombres dans une seule cellule. Pour cela, nous allons utiliser la fonction JOINDRE.TEXTE

=JOINDRE.TEXTE("",,
FILTRE(CNUM(STXT(A2,SEQUENCE(,NBCAR(A2)),1)),
ESTNUM(CNUM(STXT(A2,SEQUENCE(,NBCAR(A2)),1)))))

Formule complete pour extraire les nombres dune cellule

Retrouvez d'autres exemples avec la fonction SEQUENCE dans cette section ou sur le site de Microsoft

5 Comments

  1. Chantriaux
    18/09/2022 @ 08:18

    Bonjour,
    Je cherche à trouver dans une liste de 100 à 200 combien y à t'il de 2
    Je vous en remercie par avance
    Excellemment votre

    Didier.chantriaux@gmail.com

    Reply

  2. Dayan
    31/05/2022 @ 14:18

    Bonjour,

    Je voudrais extraire le chiffre 030 de ma cellule suivante
    GP-030-010-080-001 goupille piton. Auriez-vous la formule qui permet de le faire svp.

    Meilleures salutations

    Reply

  3. Jeremy MEREMANS
    01/02/2022 @ 22:50

    Bonjour J'ai utilisé la fonction Filtre et celle-ci fonctionne a l'exception d'une cellule ou il y a beaucoup de caractère et celle-ci n'affiche pas le résultat .
    Pouvez-vous me conceiller

    Reply

    • Frédéric LE GUEN
      11/02/2022 @ 16:59

      Je crois que la fonction FILTRE est limitée à 256 caractères

      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

RECHERCHE D’EMPLOI AVEC