Utilisation de la fonction STEXT sous Excel

Fermé
clement_a - 16 juil. 2014 à 16:22
PHILOU10120 Messages postés 6393 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 9 octobre 2024 - 17 juil. 2014 à 17:49
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

A voir également:

4 réponses

f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
16 juil. 2014 à 17:13
Bonjour,

devrait aller: adaptez a la cellule de debut et etirez vers le bas

=STXT(A2;4+NBCAR(A2)-9;6)
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
16 juil. 2014 à 17:55
Bonjour,

et droite(A2;6) ça ne le fait pas ?
eric
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 711
16 juil. 2014 à 18:11
Bonjour eriiic,

Ah! Que si, mais comme le gars citait STXT, j'ai plonge...
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
16 juil. 2014 à 19:24
ça fait ça des fois :-)
Mais bon, reste à savoir s'il a réellement que ça dans sa cellule.
Garde le stxt() sous le coude ;-)
eric
0
PHILOU10120 Messages postés 6393 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 9 octobre 2024 810
17 juil. 2014 à 17:49
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))))
0