OVH Cloud OVH Cloud

Overture d'un fichier TXT

11 réponses
Avatar
JP
Bonjour,
voici mon problème je doit récupérer un fichier TXT sur Exce,l ce fichier ce
compose de plusieurs enregistrements qui ont une clé unique
chacun de ces enregistrements comporte une a plusieurs lignes
la longueurs des champs est structuré mais la longueur de chaque
enregistrement est variable
Je cherche donc une macro que puis faire les action suivantes:
1) Trier toutes les lignes suivant la clé unique
2) mettre bout a bout toute les ligne du même enregistrement
3) et en fin ouvrir le fichier sous Excel (ca je sait faire)

Je ne sait pas si cela peut être traité par une macro Excel

Merci de votre aide

J-P

1 réponse

1 2
Avatar
JP
Bonjour,

Merci bcp hasco mais je doit mettre ma demande en stand-by car on vient de
me dire que le fichier txt que je doit recevoir n'est pas encore définitif
je reviendrais donc quand celui-ci sera connu

J-P


Et pour finir

http://cjoint.com/?eytVsftYxb

qui traite complètement le fichier que tu m'as fournit en pièce jointe


Bon,

1 - Pour ce qui est du tri, j'ai importer le fichier en enlevant les
séparateurs de champs sauf pour la première colonne. Puis choisit le format
texte pour les deux colonnes restantes afin d'avoir dans Excel En colonne A
la cléf et en colonne B la suite d'une ligne entière.

J'ai supprimé à la main les lignes à supprimer puis Enfin j'ai trié le
fichier sur la colonne A

2- J'ai réécrit un fichier texte avec la procédure suivante :
Sub EcrireNewFile()
Dim NewFic As String
Dim f As Integer
Dim c As Range
Dim ClefCourante As String
Dim NewLine As String
NewFic = ThisWorkbook.Path & "NewFic.txt"
f = FreeFile
Open NewFic For Output As #f

Set c = Range("A1")
Do While Not IsEmpty(c)
ClefCourante = c.Text
NewLine = c.Text
Do
Set c = c.Offset(1)
If c <> ClefCourante Then Exit Do
NewLine = NewLine & " " & c.Offset(, 1)
Loop
Print #f, NewLine
Loop

Close #f

Par contre cela n'enlève pas les doubles espaces. Pour cela il faudrait
inclure une fonction du type NewLine=Replace(.......)

End Sub



Cette ligne sera a supprimer

J-P


Apparament je me suis trompé en choisissant l'espace comme séparateur de
champs puisque les adresses se voient attribuer une colonne par mot.

Ce fichier m'a tout l'air d'être difficile à traiter car sa structure n'est
pas très claire, on ne peut pas savoir où commence et finissent les champs.

Je vais faire d'autre essais et si je trouve je te dis.

Une question: que représente les lignes du type
E01 AU20400 51 MAR 0 0 0 0 N GICMAR 200788 0000069


Voici le fichier

http://cjoint.com/?eyqQhAeGsb


http://cjoint.com/


Bonjour
Ok pour joindre un fichier mais je ne sait pas comment faire ?
J-P


bonjour,

Est-ce que tu peux préciser la structure de tes enregistrements un morceau
de ton fichier texte aiderai à me voir ce que tu désir.




Bonjour,
voici mon problème je doit récupérer un fichier TXT sur Exce,l ce fichier ce
compose de plusieurs enregistrements qui ont une clé unique
chacun de ces enregistrements comporte une a plusieurs lignes
la longueurs des champs est structuré mais la longueur de chaque
enregistrement est variable
Je cherche donc une macro que puis faire les action suivantes:
1) Trier toutes les lignes suivant la clé unique
2) mettre bout a bout toute les ligne du même enregistrement
3) et en fin ouvrir le fichier sous Excel (ca je sait faire)

Je ne sait pas si cela peut être traité par une macro Excel

Merci de votre aide

J-P


















1 2