Excel vers fichier txt avec champs fixes
Kevin
-
eriiic Messages postés 24581 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24581 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un fichier excel que je dois "transformer" en fichier txt.
Fichier excel avec quatre colonnes : numéro, nom, prénom, groupe
Mon fichier txt final doit resembler à ça :
[CARDXXXXX]
ACTION=NEW
BRANCH=
Initials=
Firstname=XXXXX
Name=XXXXX
PersonalNo=XXXXXXXXXXXXXXXX
Les champs XXX sont les champs variables exportés du fichier excel.
Quelqu'un a-t-il une solution ? Sinon je devrais tout faire un par un....
Merci d'avance.
J'ai un fichier excel que je dois "transformer" en fichier txt.
Fichier excel avec quatre colonnes : numéro, nom, prénom, groupe
Mon fichier txt final doit resembler à ça :
[CARDXXXXX]
ACTION=NEW
BRANCH=
Initials=
Firstname=XXXXX
Name=XXXXX
PersonalNo=XXXXXXXXXXXXXXXX
Les champs XXX sont les champs variables exportés du fichier excel.
Quelqu'un a-t-il une solution ? Sinon je devrais tout faire un par un....
Merci d'avance.
2 réponses
-
je ne comprends pas trop le problème
en "enregistrant sous" , tu ne peut pas sélectionner le format TXT , normalement il y en a de plusieurs types. -
Bonjour,
Une proposition :Sub test() '[CARDXXXXX] 'ACTION=NEW 'BRANCH= 'Initials= 'Firstname = XXXXX 'Name = XXXXX 'PersonalNo = XXXXXXXXXXXXXXXX Dim numfich As Integer, lig As Long numfich = FreeFile Open "C:\tmp\test.txt" For Output As #numfich For lig = 2 To [A65536].End(xlUp).Row Print #numfich, "[CARD" & Right("00000" & Cells(lig, 1), 5) & "]" & vbCrLf; Print #numfich, "ACTION=NEW" & vbCrLf; Print #numfich, "BRANCH=" & Cells(lig, 4) & vbCrLf; Print #numfich, "Initials= " & UCase(Left(Cells(lig, 2), 1) & Left(Cells(lig, 3), 1)) & vbCrLf; Print #numfich, "Firstname = " & Cells(lig, 3) & vbCrLf; Print #numfich, "Name = " & Cells(lig, 2) & vbCrLf; Print #numfich, "PersonalNo = " & Right("00000" & Cells(lig, 1), 5) & vbCrLf; Next lig Close #numfich End Sub
Le principe est là, il faut sans doute que tu adaptes ce que tu veux mettre exactement dans CARDXXXXX et PersonalNo, et j'ai supposé que BRANCH était le groupe.
Le fichier test.txt est écrasé à chaque lancement de la macro, pense à préserver tes traitements antérieurs à conserver.
exemple.xls
eric