Ajout. espace dans une chaine de caractères

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.

7 réponses

  1. Contributeur
    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
    1. Contributeur
      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
    2. Contributeur
      merci beaucoup, Mita
      0
    3. Contributeur
      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
  2. Contributeur
    Bonjour
    peut être une solution ici, à adapter
    http://www.cijoint.fr/cjlink.php?file=cj201106/cijzt2PcIA.xls

    crdlmnt

    0
    1. Merci pour la formule.

      Cependant, le nombre de blanc peut être < à 3.... Dans ce cas là, la formule ne marche plus...
      0
      1. Contributeur
        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
      2. 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
    2. Contributeur
      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
      1. 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
        1. 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
          1. Bonjour,

            Le fichier ci-joint semble bien fonctionner :

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

            A+

            pépé
            -3