Excel vers fichier txt avec champs fixes

Kevin -  
eriiic Messages postés 25847 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.

A voir également:

2 réponses

Daranc
 
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.
0
Kevin
 
Le problème n'est pas le format txt mais la mise en forme spécifique.
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
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
0