Les Allergies
Alimentaires
Posez votre question Signaler

Excel : extraire une chaîne de caractère [Résolu]

NeSSuS 8Messages postés 8 juin 2009Date d'inscription - Dernière réponse le 8 févr. 2010 à 11:28
Bonjour,
j'ai un petit problème excel,
j'ai des cellules comportant des chaîne de caractères tel que :
02-5
03-5/03-13
02-6
03-7/03-6
09-6
10-6/10-15
14-6
15-6
01-15/01-7
02-7
19-7/19-6
20-6/20-7
11-13
12-5/12-13
02-15
Bref, tous plus ou moins différent.
Ce que j'aimerai :
Dans le cas ou la cellule contient le caractère "/" , extraire dans une autre cellule (à droite de celle-ci) la chaîne de caractère à sa droite sans le "/" et supprimer dans la cellule de départ la chaîne copier ainsi que le "/".
En fait c'est comme si je faisait données/convertir, avec comme séparateur "/", mais je ne veut pas avoir a faire cette opération à chaque fois que je me sert de mon fichier.
petite précision, j'aimerai ne pas avoir a faire du vba, mais rester dans une bonne vieille formule.
Merci d'avance.
Lire la suite 

Excel : extraire une chaîne de caractère »

6 réponses
Réponse
+2
moins plus
Bonjour

Et voici 2 bonnes vieilles formules bien de chez nous
pour la partie avant le /
=SI(CHERCHE("/";A2)>0;GAUCHE(A2;CHERCHE("/";A2)-1))
et pour après:
=SI(CHERCHE("/";A2)>0;DROITE(A2;NBCAR(A2)-CHERCHE("/";A2)))
Ajouter un commentaire
Réponse
+1
moins plus
merci bcp a vous 2, problème résolu, formule finale :

avant :
=SI(ESTERREUR(TROUVE("/";A1));"";GAUCHE(A1;CHERCHE("/";A1)-1))
apres :
=SI(ESTERREUR(TROUVE("/";A1));"";DROITE(A1;NBCAR(A1)-CHERCHE("/";A1)))

bonne soirée a vous
Ajouter un commentaire
Réponse
+0
moins plus
bonjour

Dans le cas ou la cellule contient le caractère "/" , extraire dans une autre cellule (à droite de celle-ci)

tu peux utiliser avec ton texte en A1 :

=SI(ESTERREUR(TROUVE("/";A1));"";DROITE(A1;TROUVE("/";A1)+1))

supprimer dans la cellule de départ la chaîne copier ainsi que le "/". ..j'aimerai ne pas avoir a faire du vba

Et pourtant ce n'est pas possible sans VBA mais tu peux dans une autre colonne mettre cette formule

=SI(ESTERREUR(TROUVE("/";A1));"";GAUCHE(A1;TROUVE("/";A1)-1))

Tu peux aussi mettre une petite macro qui te fais cela à chaque modification d'une cellule.
Ajouter un commentaire
Réponse
+0
moins plus
michel, merci pour cette réponse, quelle rapidité...

le problème c'est que lorsque le caractère ne se trouve pas dans la cellule, il marque #valeur, comment faire pour éviter ca.

Merci

ps : dsl gbinforme, je n'ai pas était très précis en ne disant pas que si ce n'est pas la cellule de base qui est modifié mais recopier dans une autre c'était ok pour moi
Ajouter un commentaire
Réponse
+0
moins plus
bonjour gb

Nessus,
je croyais que "cherche" renvoyait 0 en l'absence du caractère cherché...
reprend le test de GB
ESTERREUR(TROUVE("/";A1))...
CHERCHE ou TROUVE sont équivalents dans ton problème (trouve est sensible à la casse)

pour la rapidité, j'avais à peu près le même qui trainait sur une étagère( sans le test) :o)....
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

J'ai un problème dans le même genre.
J'ai une liste de noms et numéros client (de type EU00387 ou VE00064) dans une même colonne et je dois déplacer d'une part la séquence de chiffres dans une autre colonne et d'autre part le préfixe en lettres dans une troisième colonne.
Je ne maitrise pas bien Excel, je voudrais donc une solution simple. Cependant, je ne peux pas "fractionner" la cellule de départ car je dois utiliser les colonnes prévues.

Pouvez-vous m'aider?

D'avance, un tout grand merci!
Ajouter un commentaire
Ce document intitulé « Excel : extraire une chaîne de caractère » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?