Transférer un fichier txt. en fichier Excel d'une certaine façon

Bien le Bonjour,

J'ai essayé de chercher des informations afin de transférer des données d'un fichier txt. en fichier Excel mais d'une certaine façon que je n'ai pas trouvé.

J'ai mis mon fichier texte ou il faut récupérer les informations et le fichier Excel ou je veux que ces informations soit mais de façon à ce que les noms et les codes des clients ainsi que les codes et les désignations produits se répètent à chaque fois qu'il y a une ligne de commande (voir mon fichier Excel).

J'ai essayé d'ouvrir mon fichier txt en Excel mais le problème c'est que je voudrais que chaque ligne de "commande" renvoi au client correspondant ainsi qu'au produit, et ça je n'ai pas trouvé comment le faire.

Donc je cherche si il existe une façon (VBA, convertisseur etc) pour pourvoir récupérer ces données.

Note : mon fichier txt originel fait environ 300 "pages", dans mon exemple j'ai mis qu'une "page"

Je vous remercie de votre aide

Bonjour,

Votre sujet m'intéresse car je recherchais exactement la même chose. Merci :)

De plus se que j'aimerais rajouter dans ce cas c'est de créer une macro sur une forme pour qu'il me renvoi au fichier source dans mon ordinateur pour que je puisse sélectionner celui que je veux (Car ils ont des titres différents). Puis une fois que je l'ouvre je souhaiterai qu'il s'affiche automatiquement dans le classeur demandé dans une feuille bien définit et dans la configuration dans laquelle vous avez codé pour la mise en forme.

Je suis débutant dans ce domaine donc j'essai plusieurs choses avec différents tuto ou bien de reprendre la macro directement quand je clique sur "Données" puis "à partir d'un fichier txt" puis de la remettre sur un bouton clique. Cependant j'ai toujours quelque chose qui bloque. Pouvez-vous m'aider dans ce cas svp ?

En vous remerciant d'avance pour vos retours,

Max

Bonjour BsAlv,

Je vous remercie, mais pouvez-vous me dire comment vous avez fait ?

Bonjour Max,

Heureuse que je ne sois pas la seule dans ce cas, et en effet votre idée de macro pour récupérer les données d'un fichier source m'intéresse aussi, car dans mon cas, j'ai plusieurs fichiers txt (qui ont la même structure que dans mon exemple, mais qui font plusieurs "pages").

Merci à vous

Bonjour à tous,

Je me demande quels logiciels utilisent encore des exports aussi peu pratiques… C'est une horreur pour travailler.

@Cecilou, il faut que vous lanciez la macro à votre nom dans le classeur de @BsAlv.

@MaxouMax, bienvenue, n'hésitez pas à créer un fil pour poser votre question ou à poster ici votre fichier source. Le problème de ces fichiers textes c'est qu'ils sont vraiment difficiles à lire de manière "générique" pour l'ordinateur/le programme. Par exemple, allez comprendre pourquoi mais le fichier de @cecilou utilise des "!" et ":" pour séparer les colonnes… Mais parfois il en manque quand les numéros sont trop longs, et plus plus généralement on utilise le symbole "|". Pareil il n'y a pas une ligne par "record", c'est un peu mélangé.

Alors ça nous facilite la lecture bien entendu, mais pour faire du code il faut l'adapter à chaque cas : c'est très dur de faire quelque chose de générique pour "tous les fichiers textes", puisqu'ils partagent très peu d'éléments en commun.

Si vous récupérez ces fichiers depuis un autre logiciel, regardez bien en détail les options d'export. Il y a peut-être un format CSV, JSON ou encore XML qui seraient beaucoup plus faciles à importer dans Excel.

Bonjour Saboh12617,

Merci de votre retour, en effet je n'avais pas vu la macro car je n'ai pas cliqué sur le bon module.

Quand vous dites de le mettre à mon nom, je dois changer Sub Cecilou() ? car j'ai essayé de l'exécuter mais cela bloque sur "Sub Cecilou()".

image

Désolé, je ne suis pas doué sur le VBA, je dois mettre quoi à la place? (j'ai vu que je dois changer le chemin ou le nom du fichier txt, ça normalement ça devrait aller

Merci infiniment de votre aide

Re,

Ci-joint le fichier de BsAlv, avec à droite de votre tableau une cellule contenant l'adresse du fichier source (à cliquer pour MAJ) et ensuite un bouton pour lancer la macro de @BsAlv.

Oh trop bien merci beaucoup,

Il y a juste un blocage sur ce code :

image image

Je ne connais cette fonction donc je ne sais pas ce qui bloque

Ah,

étonnant j'ai lancé la macro chez moi et ça fonctionnait… Utilisez-vous le fichier source que vous aviez posté ou un autre ?

Il faudra voir avec @BsAlv. A mon avis votre fichier contient une date qui n'est pas en jj/mm/aaaa, ou alors le code a cru détecter une date qui n'en était pas une…

Bonjour,

En effet, ca marche avec le fichier que j'ai posté mais malheureusement ça n'a pas marché avec mon vrai fichier ....

Les seules choses que j'ai modifié dans mon fichier test c'est les noms des clients et les désignations de nos pièces.

Est-ce que c'est possible que le blocage vient de la désignation car elle peut prendre différentes formes ? Comme celles-ci :

image image

Merci à vous

Pouvez-vous télécharger le fichier txt (éventuellement en PM s'il y a des données confidentielles)

Bonjour,

Oui, le code se base sur une découpe des colonnes via les espaces, donc si une désignation contient un espace… Ca décale tout d'une colonne vers la droite.

Si TOUTES VOS DESIGNATIONS sont composées de [1] OU [2 mots séparés par un espace], l'adaptation ci-jointe devrait convenir

If N = 3 Then
  aOut(4) = sp(j) & " " & sp(j + 1) 'description produit

Sinon, c'est plus compliqué.

boujour le fil,

nouvelle version, on le lit avec la méthode "Oldschool" dans une feuille et le transforme en bon format. Plus tard, vous pouvez supprimer cette feuille, elle ne sert plus à rien.

Bonjour Bart,

Merci pour le document, quand vous dites qu'il faut le lire avec la méthode " Oldschool", vous entendez quoi ?

Merci à vous

re,

dans la macro, il y a une ligne qui lit votre "TXT" avec une méthode vraiment ancienne, maintenant on utilise une méthode comme PQ ou autre. Pour vous, unique le résultat est important, donc c'était une remarque pour ceux de ce site qui lisent ma macro. Pour vous, aucun problème.

Re,

Ah ok, oui en effet ça marche, c'est incroyable !!

J'ai regardé, malheureusement j'ai des informations qui se mettre en "--------", c'est normal ?

image

Et de plus, il manque à chaque fois la premier ligne d'une référence pour chaque client : (en jaune)

image

J'ai regardé ci cela pouvait corresponde aux tirets mais non. J'ai l'impression qu'ils correspondent aux références qui n'apparaissent qu'à la "page" d'avant.

Mais déjà c'est super cool ce que vous avez fait, je vous remercie

pouvez-vous me donner un TXT de "plusieurs" pages ?

Celui que je vous ai envoyé par MP, fait 891 "pages"

re,

je n'ai pas compté les pages

Rechercher des sujets similaires à "transferer fichier txt certaine facon"