Extraire chiffres d'ne cellule excel

LMEbis Messages postés 18 Statut Membre -  
tontong Messages postés 2575 Date d'inscription   Statut Membre Dernière intervention   -
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

  1. Fahora Messages postés 949 Statut Membre 68
     
    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
    3
  2. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    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
    0
  3. tontong Messages postés 2575 Date d'inscription   Statut Membre Dernière intervention   1 064
     
    Bonjour à tous,
    Un peu de gymnastique avec les fonctions Texte:
    =DROITE(SUPPRESPACE(SUBSTITUE(MAJUSCULE(A2);"MOIS";""));2)*1
    Bien sûr à vérifier.
    0
  4. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    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
    -1