Macro:open fichier .CSV+convertir+saveas .XLS

Ben -  
 BEn -
Hello,

J'ai besoin de votre aide pour faire une macro suivante:

Ouvrir doc1 situé C:\Documents and Settings\xxx199\Bureau\reports\

et faire l'équivalent de la fonction "convertir délimité" avec séparateur virgule, sur la colonne A.

Sauvegarder le fichier sous doc1.XLS

PUIS

Ouvrir doc2.CSV situé C:\Documents and Settings\xxx199\Bureau\reports\

et faire l'équivalent de la fonction "convertir délimité" avec séparateur virgule, sur la colonne A.

Sauvegarder le fichier sous "doc2.XLS"

etc...

donc l'idée générale c'est d'ouvrir des fichiers .CSV, de leur réappliquer correctement les colonnes et enfin les sauvegarder en document .XLS.

Merci beaucoup pour votre aide

(je précise que je suis sous excel 2007)

5 réponses

  1. Ben
     
    Quelqu'un a une idée ?

    Merci d'avance !!
    1
  2. spyderpaint Messages postés 21 Statut Membre 1
     
    voila ca doit marché

    Sub Macro1()
    '
    '

    'ouvrir le fichier

    Workbooks.Open Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports\Doc1.xls"

    'convertir la colonne a avec séparateur ,
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
    :=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True

    'sauvegarder fichier

    ActiveWorkbook.SaveAs Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports\Doc1.xls", FileFormat _
    :=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
    False, CreateBackup:=False

    End Sub

    Sub Macro2()
    '
    '

    'ouvrir le fichier

    Workbooks.Open Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports\Doc2.csv"

    'convertir la colonne a avec séparateur ,
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
    :=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True

    'sauvegarder fichier

    ActiveWorkbook.SaveAs Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports\Doc2.xls", FileFormat _
    :=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
    False, CreateBackup:=False

    End Sub

    tiens nous au courant
    0
  3. BEn
     
    Bonjour et merci !!

    Voila ce que j'ai fait (copié coller des infos de spyderpaint avec mise a jour des noms de fichiers.

    Ca ouvre bien le fichier, ça convertit bien, mais ça n'enregistre pas sous format XLS (dans le meme répertoire). (erreur 400 d'excel)

    Pour info, j'aimerai qu'après avoir sauvegardé, ça ferme le fichier pour pouvoir passer au fichier suivant.

    MErci beaucoup !!!

    Sub Macro1()
    '
    '

    'ouvrir le fichier

    Workbooks.Open Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports dach\Client_followup_EWS_file_IPG.csv"

    'convertir la colonne a avec séparateur ,
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
    :=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True

    'sauvegarder fichier

    ActiveWorkbook.SaveAs Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports dach\Client_followup_EWS_file_IPG.xls", FileFormat _
    :=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
    False, CreateBackup:=False

    End Sub

    Sub Macro2()
    '
    '

    'ouvrir le fichier

    Workbooks.Open Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports dach\Client_followup_EWS_file_TSG.csv"

    'convertir la colonne a avec séparateur ,
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
    :=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True

    'sauvegarder fichier

    ActiveWorkbook.SaveAs Filename:= _
    "C:\Documents and Settings\xxx199\Bureau\reports dach\Client_followup_EWS_file_TSG.xls", FileFormat _
    :=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
    False, CreateBackup:=False

    End Sub
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question