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

  • Votes
  • Date
  • Date décroissante
  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
    1. Bonjour,

      Tu peux donner quelques exemples de chaines que l'on voit ou peuvent se trouver tes chiffres s'il te plait
      1. CC 175800 XX
        AAA XX 175800
        175800 AA
      2. Je ne connais pas visual basic...
      3. re
        voir ma réponse un peu plus bas
      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 ?
      5. il faudrait le classeur dépersonnalisé à mettre sur cjoint pour voir
    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. 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
        1. Maurice,
          voici comment se présente mes cellules :
          CC 175800 XX
          AAA XX 175800
          175800 AA
      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
        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