Ajout. espace dans une chaine de caractères

Fermé
greg_in_motion - 6 juin 2011 à 11:30
pépé35530 Messages postés 2942 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 19 mars 2016 - 6 juin 2011 à 23:45
Bonjour,

J'ai besoin d'aide...

En effet, j'ai un tableau avec une colonne de 7000 Références comme :

48401 Z01 S576 1302820002

j'aimerai ajouter un espace après 5 caractères sur le dernier bloc, comme celà :

48401 Z01 S576 13028 20002

Je précise que le nombre de caractère de la cellule peut varier, par exemple :

48401 S576 1302820002

48401 S576 13

48401 Z01 S576 1302820

Merci d'avance.
A voir également:

7 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
Modifié par Vaucluse le 6/06/2011 à 19:05
Bonjour
voila ce que ça pourrait donner avec la formule généreusement donnée par Mita sur votre autre discussion:
http://www.cijoint.fr/cjlink.php?file=cj201106/cijy0zRh1Q.xls
Formule que je gardes précieusement , merci mita.

Ps pour michel_m: s
Si tu lis ce message il ne t'exempte pas de me donner la solution pour utiliser les fonctions personnalisée, non mais ! :-))
j'ai bien trouvé les fonctions personnalisée_c'est déjà ça_et celle que tu as fournie s'affiche, mais excel me demande de lancer install et là je reste coi, quoi!

bien cordialment


Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
1
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
Modifié par Mytå le 6/06/2011 à 19:36
Salut le forum

Vaucluse, deux formules matricielles

Pour trouver le nombre de carcatères après le dernier espace.
=EQUIV(" ";STXT(A2;NBCAR(A2)-LIGNE(INDIRECT("1:"&NBCAR(A2)));1);0)

Pour avoir la position du dernier espace.
=NBCAR(A2)-EQUIV(" ";STXT(A2;NBCAR(A2)-LIGNE(INDIRECT("1:"&NBCAR(A2)));1);0)
Mytå
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
6 juin 2011 à 19:52
merci beaucoup, Mita
0
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
Modifié par Mytå le 6/06/2011 à 19:58
Re le forum

La formule finale pour un texte en A2 (Matricielle à valider par Ctrl + Shift + Enter)

=GAUCHE(A2;NBCAR(A2)-EQUIV(" ";STXT(A2;NBCAR(A2)-LIGNE(INDIRECT("1:"&NBCAR(A2)));1);0)) & STXT(DROITE(A2;EQUIV(" ";STXT(A2;NBCAR(A2)-LIGNE(INDIRECT("1:"&NBCAR(A2)));1);0));1;5) & " " & STXT(DROITE(A2;EQUIV(" ";STXT(A2;NBCAR(A2)-LIGNE(INDIRECT("1:"&NBCAR(A2)));1);0));6;5)

Bonne fin de journée
Mytå

P.S. Plus besoin d'avoir recours aux 10 colonnes intermédiaires du fichier à Pépé35530
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
6 juin 2011 à 13:23
Bonjour
peut être une solution ici, à adapter
http://www.cijoint.fr/cjlink.php?file=cj201106/cijzt2PcIA.xls

crdlmnt

0
greg_in_motion
6 juin 2011 à 14:12
Merci pour la formule.

Cependant, le nombre de blanc peut être < à 3.... Dans ce cas là, la formule ne marche plus...
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
Modifié par Vaucluse le 6/06/2011 à 14:16
Ah, il y a dans mon modéle un code à deux blancs qui renvoie bien le code complet. Mais il est vrai que le dernier item n'a pas 5 chiffres.
Il faudrait alors préciser dans quelles conditions vous voulez traiter le dernier item? est ce dans tous les cas quand il a plus de cinq chiffres quelques soit le nombre de blancs?
S'il faut chercher, autant que l'on traite d'un coup tous les cas de figures!
crdlnt
0
Oui j'ai vu... Cependant, pour ce code là : 51000 S576 13072200

Ca me donne le même résultat...

En fait, le dernier bloc a un nombre de caractère aléatoire. Mais il faut un espace à après le 5ème caractère, peut importe le nombre de caractères, et d'espaces avant.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
Modifié par Vaucluse le 6/06/2011 à 17:52
Re
désolé pour ce qui me concerne, mais à part l'usine à gaz de pépé,je ne vois qu'une macro bien spéciale qui saurait compter le nombre de blancs dans la ,cellule.
Mais ce n'est pas dans mes compétences
Bonne chance
crdlmnt
Ps mais n'aviez vous pas déjà traité ce problème avec michel ici:
https://forums.commentcamarche.net/forum/affich-22181048-separer-chaine-de-caractere-par-des-espaces#p22293290

Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pépé35530 Messages postés 2942 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 19 mars 2016 1 382
6 juin 2011 à 23:45
Bonsoir,
Même si intellectuellement la solution de Mytä est plus satisfaisante, cela reste tout de même une formule "usine à gaz".....

Bonne soirée

pépé
0
pépé35530 Messages postés 2942 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 19 mars 2016 1 382
Modifié par pépé35530 le 6/06/2011 à 14:21
Bonjour,

ci-joint un fichier excel

http://www.cijoint.fr/cjlink.php?file=cj201106/cijj36VRl2.xls

C'est un peu une usine à gaz mais cela fonctionne.
Je n'ai pas réglé le problème lorsque le nombre de groupes est égal à 2 et non pas 3.
On doit pouvoir condenser les formules.

A+
pépé
-2
pépé35530 Messages postés 2942 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 19 mars 2016 1 382
6 juin 2011 à 16:35
Bonjour,

Le fichier ci-joint semble bien fonctionner :

http://www.cijoint.fr/cjlink.php?file=cj201106/cijP5lWE2I.xls

A+

pépé
-3