Extraction chiffre

Bonjour,

je souhaite extraire les 6 chiffres d'une cellule alphanumérique dans excel 2013. Les 6 chiffres sont à suivre dans la zone mais pas toujours au même endroit
Merci de votre aide

6 réponses

  1. Bonjour,
    Peut-être avec une matricielle de Jacques Boisgontier;
    =STXT(A1;EQUIV(VRAI;ESTNUM(CNUM(STXT(A1;LIGNE($1:$255);1)));0);6)
    -Valider avec Maj+Ctrl+Entrée
    2
    1. Bonjour,

      Tu peux donner quelques exemples de chaines que l'on voit ou peuvent se trouver tes chiffres s'il te plait
      1
      1. CC 175800 XX
        AAA XX 175800
        175800 AA
        0
      2. Je ne connais pas visual basic...
        0
      3. re
        voir ma réponse un peu plus bas
        0
      4. @yclikMerci pour ton aide,
        J'ai réussi à utiliser tes formules mais je récupère que les 5 derniers chiffres.
        Dans tous les cas traités, il me manque le 1er chiffre c.a.d le 1 de 175800. Pourquoi ?
        0
      5. il faudrait le classeur dépersonnalisé à mettre sur cjoint pour voir
        0
    2. Bonjour
      Une proposition à l'aide de colonnes intermédiaires
      Extraction de la position des chiffres contenus en A2 sur 10 colonnes (B2 à K2)
      =SI(ESTERREUR(TROUVE(COLONNE()-2;$A2));"";TROUVE(COLONNE()-2;$A2
      ))
      à répéter de 0 à 9
      extraction de la chaine de 6 caractère
      =STXT(A2;MIN(B2:K2);6)
      1
      1. Bonjour

        sans modèle de ton fichier on voie pas grand chose

        voila un exemple en vba
        Sub TestNumeric()
           For L = 1 To Range("A" & Rows.Count).End(xlUp).Row
              T = Split(Range("A" & L).Value, " ")
              For I = LBound(T) To UBound(T)
                 If IsNumeric(T(I)) Then
        '            Debug.Print T(I)
                    Range("A" & L).Value = T(I) * 1
                 End If
              Next
           Next
        End Sub
        


        A+
        Maurice
        0
        1. Maurice,
          voici comment se présente mes cellules :
          CC 175800 XX
          AAA XX 175800
          175800 AA
          0
      2. Re,k

        je te propose une fonction personnalisée en VBA si tu as quelques notions, ouvre le visual Basic et colle ce code
        Function EXTNUM(Cellule As Range)
        S = Cellule.Value
        Application.Volatile
        For i = 1 To Len(S)
        If IsNumeric(Mid(S, i, 1)) Then
        S = Mid(S, i)
        Exit For
        End If
        Next
        EXTNUM = Val(S)
        End Function


        ensuite sur ta feuille de calcul appelle la fonction dans la cellule de ton choix.
        si tu as besoin de plus de détail fait signe
        0
        1. Bonjour
          Méthode simple
          -Sélectionnez tous les textes de la colonne où doivent être extrait les nombres
          -Sur le ruban, sélectionnez l'option "Données"
          -Dans "Outils de Données" cliquez sur convertir (choisir "délimité" puis "espace" comme séparateur)
          dans la colonne à droite copiez cette formule
          =SI(ESTNUM(B2);B2;SI(ESTNUM(C2);C2;D2)) et tirez vers le bas
          Cdlt
          0