Extraire une chaîne de caractère
Jrmy
-
diablo13800 Messages postés 2890 Date d'inscription Statut Membre Dernière intervention -
diablo13800 Messages postés 2890 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous !
Je souhaiterais extraire une chaine de caractère qui se situe au milieu d'une autre chaine de caractère.
Je mets un exemple ce sera plus simple : le texte complet est %mass 7778-50-9/231-906-6/, et moi je voudrais seulement garder 7778-50-9. Pour cela j'ai utilisé la formule =STXT(D10;CHERCHE("ss ";D10)+3;9), qui fonctionne mais seulement le numéro a extraire ne comporte pas tout le temps 9 caractères ... En revanche il est bien toujours positionné après l'enchainement "ss " et avant "/".
Auriez vous une idée pour résoudre ce problème ?
Merci d'avance pour votre aide et bonne journée !
Jérémy
Je souhaiterais extraire une chaine de caractère qui se situe au milieu d'une autre chaine de caractère.
Je mets un exemple ce sera plus simple : le texte complet est %mass 7778-50-9/231-906-6/, et moi je voudrais seulement garder 7778-50-9. Pour cela j'ai utilisé la formule =STXT(D10;CHERCHE("ss ";D10)+3;9), qui fonctionne mais seulement le numéro a extraire ne comporte pas tout le temps 9 caractères ... En revanche il est bien toujours positionné après l'enchainement "ss " et avant "/".
Auriez vous une idée pour résoudre ce problème ?
Merci d'avance pour votre aide et bonne journée !
Jérémy
A voir également:
- Extraire une chaîne de caractère
- Extraire une video youtube - Guide
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Extraire le son d'une vidéo - Guide
- Caractere speciaux - Guide
2 réponses
Bonjour,
un peu moins barbare ;-) En complétant ta formule :
eric
un peu moins barbare ;-) En complétant ta formule :
=STXT(A2;CHERCHE(" ";A2)+1;CHERCHE("/";A2)-7)
eric
Bonjour,
J'ai une formule pour vous elle est un peu barbare mais a le mérite de fonctionner:
Il faut juste remplacer A2 par la case en question. Attention, vos case doivent contenir un espace avant la série de chiffre que vous voulez ( ça a l'air d'être dans vos prérequis avec le "mass ")
J'ai une formule pour vous elle est un peu barbare mais a le mérite de fonctionner:
=DROITE(GAUCHE(A2;CHERCHE("/";A2)-1);NBCAR(GAUCHE(A2;CHERCHE("/";A2)-1))-CHERCHE(" ";GAUCHE(A2;CHERCHE("/";A2)-1)))
Il faut juste remplacer A2 par la case en question. Attention, vos case doivent contenir un espace avant la série de chiffre que vous voulez ( ça a l'air d'être dans vos prérequis avec le "mass ")
Pour faire simple:
-Droite(texte,[nb_car]) permet de prendre les "nb_car" de la chaîne texte.
-Gauche... Bon c'est pareil mais a gauche.
-nbCar permet de compter le nombre de caractère d'une chaîne.
- et cherche renvoi la position du caractère cherché.
Donc, On prend la droite ( "DROITE(" ), du texte renvoyé par gauche("GAUCHE(") , qui prend les caractères à gauche de "/"( "CHERCHE("/";A2)-1)" ). et on prend le nombre de caractère ( "NBCAR(" )du texte renvoyé par gauche ( "GAUCHE(A2;CHERCHE("/";A2)-1))" ( -1 car on retire le "/" du calcul ) , auxquel on retire le nombre de caractère avant votre série de chiffre ( "CHERCHE(" ";GAUCHE(A2;CHERCHE("/";A2)-1))" )
Alors oui c'est très barbare et mon explication est peut-être pas ... Très explicite, mais je vois pas comment vous l'expliquez mieux. C'est une combinaison de recherche de caractère, et de nombre de caractères :)
-Droite(texte,[nb_car]) permet de prendre les "nb_car" de la chaîne texte.
-Gauche... Bon c'est pareil mais a gauche.
-nbCar permet de compter le nombre de caractère d'une chaîne.
- et cherche renvoi la position du caractère cherché.
Donc, On prend la droite ( "DROITE(" ), du texte renvoyé par gauche("GAUCHE(") , qui prend les caractères à gauche de "/"( "CHERCHE("/";A2)-1)" ). et on prend le nombre de caractère ( "NBCAR(" )du texte renvoyé par gauche ( "GAUCHE(A2;CHERCHE("/";A2)-1))" ( -1 car on retire le "/" du calcul ) , auxquel on retire le nombre de caractère avant votre série de chiffre ( "CHERCHE(" ";GAUCHE(A2;CHERCHE("/";A2)-1))" )
Alors oui c'est très barbare et mon explication est peut-être pas ... Très explicite, mais je vois pas comment vous l'expliquez mieux. C'est une combinaison de recherche de caractère, et de nombre de caractères :)
Merci pour ta réponse, c'est en effet plus sympa comme formule haha
comme il recherchait "ss ", à-priori "%mass " est constant.
eric