Conversion auto fichier texte en Excel

thermite

XLDnaute Nouveau
Bonjour,

Est-il possible svp d'automatiser la conversion d'un lot de fichiers .txt ou autre texte en excel via une macro, en considérant la limitation des colonnes par les Tabulations et les Espaces.

En fait comme si on ouvrait le doc texte avec excel, et que l'on selectionnait délimitation TAB et Espace pendant l'import. Mais de facon auto sur un grand nombre de fichiers?

Merci de votre aide:)
 

thermite

XLDnaute Nouveau
Re : Conversion auto fichier texte en Excel

Oui j’essaye de le faire via une macro mais bon c'est plus facile sur le papier!!:)

En fait tous mes fichiers sont dans un dossier commun, et à la sortie je voudrait que des .xml, soit dans le meme dossier ou bien dans un sous dossier.
 

st007

XLDnaute Barbatruc
Re : Conversion auto fichier texte en Excel

Bonsoir,
Robert m'a fait ce genre de macro,
Mon but était de lancer la macro, selectionner un fichier texte dans un dossier par l'explorateur windows puis la macro me crée autant d'onglets que de fichiers texte...
 

thermite

XLDnaute Nouveau
Re : Conversion auto fichier texte en Excel

Voila le texte.
Par contre il ne sauvegarde pas l'enregistrement en xls.
L'idée serait de le faire sur tous les autres fichiers en auto fichier2 fichier3 ect... a la chaine.

Sub Macro1()
'
' Macro1 Macro
'

'
Workbooks.OpenText Filename:="C:\donnees\fichier1.txt", Origin:=xlMSDOS, _
StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 1), Array(4, _
1), Array(8, 1), Array(12, 1), Array(23, 1), Array(28, 1)), TrailingMinusNumbers:= _
True
Application.CutCopyMode = False
End Sub
 

tototiti2008

XLDnaute Barbatruc
Re : Conversion auto fichier texte en Excel

Re,

ça aurait dû donner un truc comme ça...

Code:
    Workbooks.OpenText Filename:="C:\Users\toto\Documents\aa.txt", Origin:= _        
xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote _
        , ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, Comma:=False _
        , Space:=True, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array _
        (3, 1)), TrailingMinusNumbers:=True
    ActiveWorkbook.SaveAs Filename:="C:\Users\toto\Documents\aa.xls", FileFormat _
        :=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
        False, CreateBackup:=False

Je vois pour boucler sur les fichiers
 

tototiti2008

XLDnaute Barbatruc
Re : Conversion auto fichier texte en Excel

Re,

un essai

Code:
Sub TraiteFicTXT()
Dim DossSource As String, DossDest As String, NomFic As String, Wkb As Workbook
    DossSource = "C:\Users\toto\Documents\" 'dossier contenant les fichiers txt
    DossDest = "C:\Users\toto\Documents\" 'dossier où enregistrer les xls
    NomFic = Dir(DossSource & "*.txt")
    Do Until NomFic = ""
        Workbooks.OpenText Filename:=DossSource & NomFic, Origin:= _
            xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote _
            , ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, Comma:=False _
            , Space:=True, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array _
            (3, 1)), TrailingMinusNumbers:=True
        Set Wkb = ActiveWorkbook
        Wkb.SaveAs Filename:=DossDest & Left(NomFic, InStrRev(NomFic, ".") - 1) & ".xls", FileFormat _
            :=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
            False, CreateBackup:=False
        Wkb.Close False
        NomFic = Dir
    Loop
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 942
Membres
103 989
dernier inscrit
jralonso