XL 2019 Extraire que les chiffres

Freedal

XLDnaute Junior
Bonjour à tous,:)
Dans une cellule se trouve une suite de caractère comme "FH124JKd14m3Em" et je souhaiterai
n'extraire que les chiffres de cette suite, en l'occurrence dans cet exemple obtenir "124143"
Merci de votre aide
 
Solution
Sur les versions plus anciennes JOINDRE.TEXTE n'existe pas, utiliser cette fonction VBA :
VB:
Function Extraire_chiffres(t$)
Dim i%, v
For i = 1 To Len(t)
    v = Mid(t, i, 1)
    If IsNumeric(v) Then Extraire_chiffres = Extraire_chiffres & v
Next
End Function
Le code doit être placé impérativement dans un module standard.

Formule en B2 =Extraire_chiffres(A2)

job75

XLDnaute Barbatruc
Bonjour Freedal,

Sur Excel 2019 on peut utiliser la fonction JOINDRE.TEXTE, formule matricielle en B2 :
Code:
=JOINDRE.TEXTE("";;SI(ESTNUM(-STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1));STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1);""))
A valider par Ctrl+Maj+Entrée.

A+
 

Pièces jointes

  • Classeur(1).xlsx
    10 KB · Affichages: 8

job75

XLDnaute Barbatruc
Sur les versions plus anciennes JOINDRE.TEXTE n'existe pas, utiliser cette fonction VBA :
VB:
Function Extraire_chiffres(t$)
Dim i%, v
For i = 1 To Len(t)
    v = Mid(t, i, 1)
    If IsNumeric(v) Then Extraire_chiffres = Extraire_chiffres & v
Next
End Function
Le code doit être placé impérativement dans un module standard.

Formule en B2 =Extraire_chiffres(A2)
 

Pièces jointes

  • Extraire chiffres(1).xlsm
    15.4 KB · Affichages: 5

Freedal

XLDnaute Junior
Bonjour Job75 :)
je me permet de revenir vers toi , j'ai établi une liste déroulante sans vide avec des données issues d'une même plage mais je n'arrive pas à faire de même avec des données issues de plages différentes.
Merci d'avance.
 

Pièces jointes

  • Liste.xlsx
    12.9 KB · Affichages: 5

Discussions similaires

Réponses
16
Affichages
728
Réponses
16
Affichages
485