Problème importation Texte sur Exel

Résolu
Wellgan Messages postés 16 Statut Membre -  
JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention   -
Bonjours,

Voilà j'ai un Fichier texte d'environ 5000 lignes et quand je l'importe dans exel tout est décalé.
En effet les différentes lignes n'ont pas la meme taille et il n'y a pas de séparateur prévue dans ce fichier pour l'importation. Si dans l'option d'importation du fichier je choisit comme séparateur les "espaces" c'est la que tout ce décale.

La composition d'une des lignes est : numero, numero, nom, adresse(adresse sur 3 colonne malheureseument), code postal, ville.
La taille de l'adresse n'etant pas toujours la meme, un code postal peut se retrouver dans la colonne de la ville d'un autre ligne. (En espérant etre explicite)

Existe-t-il un moyen de palier se probleme ?

11 réponses

  1. tontong Messages postés 2575 Date d'inscription   Statut Membre Dernière intervention   1 064
     
    Bonjour,
    Pour résoudre ce genre de problème l'important c'est de bien définir ce qui est constant.
    Un exemple de début de solution:
    http://www.cjoint.com/c/EFjsjRv870X
    1
  2. Excel-worker Messages postés 603 Statut Membre 58
     
    Bonjour,

    Comment est structurer ton fichier texte ?

    Peut-on avoir une infime partie de ton extraction sur Excel (tu peux supprimer les données confidentielles)

    Heberge le tout sur https://www.cjoint.com/

    Fournis le lien crée.

    Cdlt
    0
  3. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour

    Avez-vous regarder
    Menu
    Données
    Convertir
    0
  4. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    essayez avec Tabulation en separateur
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Wellgan Messages postés 16 Statut Membre
     
    Le probleme c'est que les donnée sont confidentiel, je devrai donc cacher toutes les donnée se qui ne t'aiderai pas...
    Par tabulation cela ne marche pas non plus.

    Mais comme le nombre de mot par ligne n'est pas égal, quand il sépare par espace , rien est a ca place.
    0
    1. Excel-worker Messages postés 603 Statut Membre 58
       
      Dans ce cas, ecrit des données fausses sur 10 lignes et envoie nous ton fichier excel (si c'est la même structure que l'original), si on y arrive, tu y arriverais aussi.
      0
  7. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour

    On peut par formule extraire le premier numéro
    est-il constant en nombre de caractères, 6,8 ou 10 chiffres
    Avec les fonctions droite et gauche
    etc...
    0
  8. bitbit Messages postés 10 Statut Membre
     
    La structure de ton fichier peut aider à statuer sur ton blèm
    Au moins tu peut extraire les 2 champs "num" "num" qui dont les longueurs (taille) sont fixes
    Utilise la formule stxt
    by
    0
  9. bitbit Messages postés 10 Statut Membre
     
    Mon frère vous allez résoudre votre problème en 3 étapes
    1 - tu fait la conversion normalement :Données - convertir puis terminé
    2 - tu copie la colonne D sur une nouvelle feuil dans la colonne A de ton classeur , tu refait la même chose sauf que la tu fais suivant puis espace
    3- dans la colonne k tu fais =A1&" "&B1
    dans L tu fais le reste

    NB: Si nom et prénom >a 2 mots. Ton blème n'est encore résolu
    0
  10. Wellgan Messages postés 16 Statut Membre
     
    J'ai essayer ce que vous m'avez dit mais malheureusement comme rien n'est régulier, le probleme n'est pas résolue :/
    0
  11. JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention   859
     
    Bonjour,

    Quand les données ne sont pas régulières, il faut essayer les ..... expressions régulières.

    Voilà les 9 formules :
    =GAUCHE($A48;REGEX.TROUVE($A48;" \d{4} \d{6} ")-1)

    =REGEX.STXT($A48;" \d{4} ")

    =REGEX.STXT($A48;" \d{6} ")

    =SUPPRESPACE(STXT($A48;REGEX.TROUVE($A48;" \d{4} \d{6} ")+13;REGEX.TROUVE($A48;" \d+";3)-REGEX.TROUVE($A48;" \d{4} \d{6} ")-13))

    =SUPPRESPACE(STXT($A48;REGEX.TROUVE($A48;" \d+";3);-REGEX.TROUVE($A48;" \d+";3)+REGEX.TROUVE($A48;" \d{5} ")))

    =REGEX.STXT($A48;" \d{5} ")

    =SUPPRESPACE(STXT($A48;REGEX.TROUVE($A48;" \d{5} ")+7;-7-REGEX.TROUVE($A48;" \d{5} ")+REGEX.TROUVE($A48;" \d{10} ")))

    =REGEX.STXT($A48;" \d{10} ")

    =SUPPRESPACE(DROITE($A48;NBCAR($A48)-REGEX.TROUVE($A48;" \d{10} ")-11))

    Pour que ça fonctionne, il faut avoir installé la macro complémentaire MoreFunc de Laurent Longre.

    cordialement
    0
    1. Wellgan Messages postés 16 Statut Membre
       
      Dois-je selectionner une ligne spécifique en entrant ces commandes ? car sinon elle ne fonctionne pas non plus :/
      0
    2. JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention   859
       
      La formule fait référence à la cellule A48.
      C'est à modifier selon l'emplacement de tes données.
      Cdlt
      0
      1. bitbit Messages postés 10 Statut Membre > JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention  
         
        salut
        Qui a extrait le fichier? quels sont les critères posés pour le faire?
        La syntaxe de ton fichier texte ça donne quoi?
        0
    3. Wellgan Messages postés 16 Statut Membre
       
      Malheureusement, cela ne fonctionne toujours pas :/
      0
    4. JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention   859
       
      Bonjour,

      Que veux-tu que l'on fasse avec une réponse comme celle là!
      Explique ce qui ne va pas. Dans quel cas? Quelle erreur as-tu?

      Tu as pu constater que les formules fonctionnent sur ton fichier test. Oui? non ?

      cdlt
      0