Utilisation de la fonction STEXT sous Excel
clement_a
-
PHILOU10120 Messages postés 6445 Date d'inscription Statut Contributeur Dernière intervention -
PHILOU10120 Messages postés 6445 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je me tourne vers vous pour résoudre un problème Excel...
En effet je suis à la recherche d'une méthode pour pouvoir extraire à partir d'une cellule Excel une chaîne de caractère. Mon soucis vient du fait de la longueur de cette chaîne de caractère car avec la fonction STEXT il faut spécifier le nombre de caractère. Or lorsque ces valeurs ont été rentrée cela a été fait un peu à la sauvage sachant que la chaîne de caractère que je veux extraire est toujours de la forme :
lllccccccc (comprenez l pour lettre et c pour chiffre), malheureusement certains petits malins se sont amusés à rentrer cette chaîne de façons diverses et variées comme :
lll:ccccccc
lll ccccccc
lll : ccccccc
lll :ccccccc
Enfin bref tout est imaginable, il se trouve que les 3 lll sont toujours les mêmes j'ai pu donc grâce à la fonction CHERCHE isolé ces membre là, par contre comme vous pouvez le voir le nombre de caractère de fin change de valeur allant de 9 à 12, si je veux avoir toutes mes valeurs de chiffre il faut donc que je mette 12 en nombre de caractère final avec la probabilité de tomber sur de nouveaux caractères qui n'ont rien à voir avec ce que je cherche lorsqu'il n'y en a que 9...(Vous suivez ? ;))
Je n'ai plus d'idée pour venir à bout de ce problème épineux sachant que mon tableau a 6000 lignes je me vois mal tout reprendre à la main...
Merci d'avance pour votre aide ! (ah oui j'oubliais pour compliquer la tâche je ne connais rien aux macros et au VBA... comme ça c'est plus facile non ?)
Clément
Je me tourne vers vous pour résoudre un problème Excel...
En effet je suis à la recherche d'une méthode pour pouvoir extraire à partir d'une cellule Excel une chaîne de caractère. Mon soucis vient du fait de la longueur de cette chaîne de caractère car avec la fonction STEXT il faut spécifier le nombre de caractère. Or lorsque ces valeurs ont été rentrée cela a été fait un peu à la sauvage sachant que la chaîne de caractère que je veux extraire est toujours de la forme :
lllccccccc (comprenez l pour lettre et c pour chiffre), malheureusement certains petits malins se sont amusés à rentrer cette chaîne de façons diverses et variées comme :
lll:ccccccc
lll ccccccc
lll : ccccccc
lll :ccccccc
Enfin bref tout est imaginable, il se trouve que les 3 lll sont toujours les mêmes j'ai pu donc grâce à la fonction CHERCHE isolé ces membre là, par contre comme vous pouvez le voir le nombre de caractère de fin change de valeur allant de 9 à 12, si je veux avoir toutes mes valeurs de chiffre il faut donc que je mette 12 en nombre de caractère final avec la probabilité de tomber sur de nouveaux caractères qui n'ont rien à voir avec ce que je cherche lorsqu'il n'y en a que 9...(Vous suivez ? ;))
Je n'ai plus d'idée pour venir à bout de ce problème épineux sachant que mon tableau a 6000 lignes je me vois mal tout reprendre à la main...
Merci d'avance pour votre aide ! (ah oui j'oubliais pour compliquer la tâche je ne connais rien aux macros et au VBA... comme ça c'est plus facile non ?)
Clément
A voir également:
- Utilisation de la fonction STEXT sous Excel
- Fonction si et excel - Guide
- Liste déroulante excel - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Word et excel gratuit - Guide
- Comment calculer la moyenne sur excel - Guide
4 réponses
Bonjour,
devrait aller: adaptez a la cellule de debut et etirez vers le bas
=STXT(A2;4+NBCAR(A2)-9;6)
devrait aller: adaptez a la cellule de debut et etirez vers le bas
=STXT(A2;4+NBCAR(A2)-9;6)
bonjour
Si la cellule contient toujours le nombre à la fin et qu'il y a toujours 6 caractées la formule d'Eriiic =droite(A1;6) est la plus simple
Autrement on peut faire:
Pour traiter le cas des ":" ou " " et ne sachant pas s'il y a toujours le même nombre de caractère et pour supprimer les espaces superflus
=SI(ESTERREUR(CHERCHE(":";A1;1));SUPPRESPACE(STXT(A1;CHERCHE(" ";A1;1)+1;NBCAR(A1)-CHERCHE(" ";A1;1)));SUPPRESPACE(STXT(A1;CHERCHE(":";A1;1)+1;NBCAR(A1)-CHERCHE(":";A1;1))))
Si la cellule contient toujours le nombre à la fin et qu'il y a toujours 6 caractées la formule d'Eriiic =droite(A1;6) est la plus simple
Autrement on peut faire:
Pour traiter le cas des ":" ou " " et ne sachant pas s'il y a toujours le même nombre de caractère et pour supprimer les espaces superflus
=SI(ESTERREUR(CHERCHE(":";A1;1));SUPPRESPACE(STXT(A1;CHERCHE(" ";A1;1)+1;NBCAR(A1)-CHERCHE(" ";A1;1)));SUPPRESPACE(STXT(A1;CHERCHE(":";A1;1)+1;NBCAR(A1)-CHERCHE(":";A1;1))))