Utilisation de la fonction STEXT sous Excel

[Fermé]
Signaler
-
Messages postés
5701
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
20 octobre 2021
-
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

4 réponses

Messages postés
16042
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 octobre 2021
1 548
Bonjour,

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

=STXT(A2;4+NBCAR(A2)-9;6)
Messages postés
24201
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
22 octobre 2021
6 936
Bonjour,

et droite(A2;6) ça ne le fait pas ?
eric
Messages postés
16042
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 octobre 2021
1 548
Bonjour eriiic,

Ah! Que si, mais comme le gars citait STXT, j'ai plonge...
Messages postés
24201
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
22 octobre 2021
6 936
ç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
Messages postés
5701
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
20 octobre 2021
666
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))))