Extraire text d'une chaine Alphanumerique
Résolu
elglouton
Messages postés
197
Statut
Membre
-
gbinforme Messages postés 14930 Date d'inscription Statut Contributeur Dernière intervention -
gbinforme Messages postés 14930 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je cherche à extraire le texte d'une chaine de caractère en déterminant la position du 1er nombre rencontré
2 ECHELLE DE TEMPERATURE 0-4 0
Pour extraire le 1er 2 j'ai utilisé : =GAUCHE(N° de la cellule;2) sachant que pour le 1er nombre cela n'exede jamais deux caractères
Et je souhaiterai extraire le texte "ECHELLE DE TEMPERATURE" dans un second temps j'ai utiliser =SUBSTITUE(GAUCHE(B28;TROUVE(" ";B28));H28;"";1) le problème est qu'il n'y a pas toujours un double espace après le texte mais il y à toujours un caractère numérique
Je souhaiter donc savoir si il est possible d'utiliser la fonction trouve (caractère numérique) dans cette formule ?
Merci d'avance pour vos reponses
Je cherche à extraire le texte d'une chaine de caractère en déterminant la position du 1er nombre rencontré
2 ECHELLE DE TEMPERATURE 0-4 0
Pour extraire le 1er 2 j'ai utilisé : =GAUCHE(N° de la cellule;2) sachant que pour le 1er nombre cela n'exede jamais deux caractères
Et je souhaiterai extraire le texte "ECHELLE DE TEMPERATURE" dans un second temps j'ai utiliser =SUBSTITUE(GAUCHE(B28;TROUVE(" ";B28));H28;"";1) le problème est qu'il n'y a pas toujours un double espace après le texte mais il y à toujours un caractère numérique
Je souhaiter donc savoir si il est possible d'utiliser la fonction trouve (caractère numérique) dans cette formule ?
Merci d'avance pour vos reponses
3 réponses
-
Bonjour
le nombre de caractères est il constant après le dernier espace?
y a t il toujours le même nombre de blanc avant le 1° 0,
crdlmnt
Ps le problème étant que même un 0 au milieu d'un texte ne peut pas être considéré par excel comme une valeur num
Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique? -
Bonjour
Pour le fun
texte en B24 par ex
=extraire_maj(B24)
avec la fonction personnalisée:Function extraire_maj(texto As String) Dim reg As Object Dim extraction As Object Set reg = CreateObject("vbscript.regexp") reg.Global = True reg.Pattern = "([A-Z ])" Set extraction = reg.Execute(texto) For Each maj In extraction extraire_maj = extraire_maj & maj.Value Next maj extraire_maj = Trim(extraire_maj) End Function
Michel-
-
je teste toujours avant de proposer...
https://www.cjoint.com/?3JmjRVgO4zD -
-
C'est vrai ça marche nikel je m'excuse si tu as pensé que je disais que ça ne marcher pas je voulais dire que je n'arriver pas à le faire fonctionner et demander la marche à suivre mais j'ai pas du être clair.
Je l'avais poser dans le module d'un autre classeur ouvert tromper de fichier...
Encore Sorry et merci pour ta réponse c'est parfait
-
-
Function NumChaine(chaine)
temp = ""
For i = 1 To Len(chaine)
c = Mid(chaine, i, 1)
If c >= "0" And c <= "9" Or c = "." Then temp = temp & c
Next i
NumChaine = temp
End Function
exemple:
En A1 : Tunisie 2011
En B1: =NumChaine(A1) ==> 2011