Extraire chiffres d'ne cellule excel

Bonjour,

Et merci d'avance à ceux ou celles qui prendront le temps de lire et de m'aider à trouver une solution.
J'ai ce type de données dans des cellules :

GARANTIE 12MOIS
CONSTRUCTEUR 24
CONSTRUCTEUR 24
CONSTRUCTEUR 12
GARANTIE 12MOIS
CONSTRUCTEUR 24
Garantie 6 mois
GARANTIE 12MOIS
GARANTIE 12MOIS
Garantie 6 mois
CONSTRUCTEUR 24
Garantie 3 mois
CONSTRUCTEUR 24
CONSTRUCTEUR 24

Et il faut que je récupère seulement les mois de garantie, soit
12
24
24
12
12
...

Quelqu'un peut-il m'aider ?

Un grand merci encore !

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    =STXT(A1;EQUIV(VRAI;ESTNUM(CNUM(STXT(A1;LIGNE($1:$255);1)));0);2)


    Fonction a rentrer en maintenant CTRL + SHIFT (fonction matricielle)
    Il doit apparaitre des accolades autour de la fonction :

    {=STXT(A1;EQUIV(VRAI;ESTNUM(CNUM(STXT(A1;LIGNE($1:$255);1)));0);2)}

    Cordialement,
    Nos seules limites sont celles que nous nous imposons nous-même.
    La politesse et un merci ne tuent pas. Il existe un bouton pour "Résolu" pour confirmer que     votre problème n'en est plus un. Fahora
    1. Contributeur
      Bonjouir
      essayez cette formule pur un texte en A1:

      =STXT(A1;TROUVE(" ";A1)+1;SI(DROITE(MAJUSCULE(A1);4)="MOIS";NBCAR(STXT(A1;TROUVE(" ";A1)+1;10))-4;2))*1

      ne fonction que si:
      le nombre est bienjuste après le 1° blanc
      le texte derrière le chiffre est Mois ou rien
      crdlmnt
      1. Bonjour à tous,
        Un peu de gymnastique avec les fonctions Texte:
        =DROITE(SUPPRESPACE(SUBSTITUE(MAJUSCULE(A2);"MOIS";""));2)*1
        Bien sûr à vérifier.
        1. Bonjour,

          avec une fonction personnalisée, colle ce code dans un module

          Function EXTNUM(Cellule As Range)
          M = Cellule.Value
          Application.Volatile
          For i = 1 To Len(M)
          If IsNumeric(Mid(M, i, 1)) Then
          M = Mid(M, i)
          Exit For
          End If
          Next
          EXTNUM = Val(M)
          End Function

          et appelle la fonction personnalisée dans la première cellule de ton choix et incrémente vers le bas