Excel : Colonnes spécifiques en CSV

Résolu/Fermé
NaXiLeAn Messages postés 112 Date d'inscription mercredi 27 juillet 2016 Statut Membre Dernière intervention 2 juin 2020 - 7 avril 2017 à 09:46
NaXiLeAn Messages postés 112 Date d'inscription mercredi 27 juillet 2016 Statut Membre Dernière intervention 2 juin 2020 - 7 avril 2017 à 10:00
Bonjour,

Je souhaiterais créer plusieurs fichiers csv depuis un classeur Excel en spécifiant les colonnes à extraire.
Je rencontre un problème car l'ensemble des colonnes sont extraites avec mon code et non seulement celles que je souhaite.
Si quelqu'un aurait la gentillesse de bien vouloir me donner un coup de main :)

Sub Users_Csv()
Dim Plage As Object, oL As Object, oC As Object, Tmp As String, Sep$
Sep = ";"
Set Plage = Sheets("Users").Range("A1:AN" & Sheets("Users").Range("A1000").End(3).Row)
Open Format(Date, "yymmdd") & "_Template_Users.csv" For Output As #1
For Each oL In Plage.Rows
Tmp = ""
For Each oC In oL.Cells
Tmp = Tmp & CStr(oC.Text) & Sep
Next
Print #1, Tmp
Next
Set Plage = Sheets("Master").Range("A1:AE" & Sheets("Master").Range("A1000").End(3).Row)
Open Format(Date, "yymmdd") & "_Template_Secteur.csv" For Output As #2
For Each oL In Plage.Rows
Tmp = ""
For Each oC In oL.Cells
Tmp = Tmp & CStr(oC.Text) & Sep
Next
Print #2, Tmp
Next
Close
End Sub


<config>Windows
A voir également:

1 réponse

NaXiLeAn Messages postés 112 Date d'inscription mercredi 27 juillet 2016 Statut Membre Dernière intervention 2 juin 2020 1
7 avril 2017 à 10:00
J'ai enfin trouvé!!!
Merci mon intuition...

Pour info j'ai mis des "****" là où il y a une suppression de caractères.
Sub Users_Csv()
Dim Plage As Object, oL As Object, oC As Object, Tmp As String, Sep$
Sep = ";"
Set Plage = Sheets("Users").Range("A1:****N" & Sheets("Users").Range("A1000").End(3).Row)
Open Format(Date, "yymmdd") & "_Template_Users.csv" For Output As #1
For Each oL In Plage.Rows
Tmp = ""
For Each oC In oL.Cells
Tmp = Tmp & CStr(oC.Text) & Sep
Next
Print #1, Tmp
Next
Set Plage = Sheets("Master").Range("A1:****E" & Sheets("Master").Range("A1000").End(3).Row)
Open Format(Date, "yymmdd") & "_Template_Secteur.csv" For Output As #2
For Each oL In Plage.Rows
Tmp = ""
For Each oC In oL.Cells
Tmp = Tmp & CStr(oC.Text) & Sep
Next
Print #2, Tmp
Next
Close
End Sub
0