Extraire de nombres dans une chaîne de caractères

Fermé
cy2 - 30 avril 2019 à 10:36
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 1 mai 2019 à 10:47
Bonjour,

J'ai besoin d'aide dans cellule j'ai des caractères comme ceux là "REFL105072050MV" je veut pouvoir extraire 105072050 sans utiliser la fonction SPLIT parce que j'ai aussi des caractères comme ceux là aussi "JTSOUD4 ALVEOL106763718MV".
La fonction SPLIT m'écrit 4 et 106763718 dans deux cellule différente ce qui ne me convient pas du tout je voudrais qu'ils soient dans la même cellule.


Configuration: Windows / Chrome 74.0.3729.108
A voir également:

2 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
30 avril 2019 à 10:57
Bonjour,

voir ceci:

https://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-P

en modifiant cela donne cela:

Sub extraireValeursNumeriques_DansChaine()
    Dim i As Byte, Nb As Byte
    Dim Cible As String, Resultat As String
    Dim Nombre As Double
    
    Cible = Range("A1").Value
    'Pour que fonction Val puisse reconnaitre les décimales: Remplacement des
    'virgules par des points
    Cible = Replace(Cible, ",", ".")
    'Pour gérer deux nombres qui se suivent: remplacement des espaces
    'par un caractère Alpha
    Cible = Replace(Cible, " ", "x")
    
    For i = 1 To Len(Cible)
        If IsNumeric(Mid(Cible, i, 1)) Then
        Nombre = Val(Mid(Cible, i, Len(Cible) - i + 1))
        Nb = Nb + 1
        Resultat = Resultat & Nombre ' & vbLf
        i = i + Len(Str(Nombre)) - 1
        End If
    Next
     Range("B1").Value = Resultat
   ' MsgBox "Il y a " & Nb & " valeurs numériques dans la cellule " & vbLf & Resultat
End Sub


voilà
0
Bonjour,

Merci mais mon soucis c'est pas pour VBA mais juste pour excel; écrire une formule dans une cellule et la copier pour les autres.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
1 mai 2019 à 10:47
Bonjour à tous

Avec une formule matricielle, on aura une sacrée usine à gaz très fragile !.....

La solution pourrait passer par une fonction personnalisée plutôt que par une macro

Par exemple
https://mon-partage.fr/f/7W7xbNmW/
0