Macro _Exporter des données au format csv
senecartour
Messages postés
391
Statut
Membre
-
senecartour Messages postés 391 Statut Membre -
senecartour Messages postés 391 Statut Membre -
Bonjour,
J'ai trouvé un code en ligne que j'essaie d'adapter à mon cas.
Je souhaite exporter les données de ma feuille dans un fichier texte.
Mais j'ai un message d'erreur au lancement de ma macro "Sub, Function ou property attendu".
J'ai beau recherché, je ne trouve pas les causes de l'erreur.
Je vous joins le fichier avec le code via le lien
https://www.cjoint.com/c/FAAk1BvUwih
Merci d'avance pour votre aide
J'ai trouvé un code en ligne que j'essaie d'adapter à mon cas.
Je souhaite exporter les données de ma feuille dans un fichier texte.
Mais j'ai un message d'erreur au lancement de ma macro "Sub, Function ou property attendu".
J'ai beau recherché, je ne trouve pas les causes de l'erreur.
Je vous joins le fichier avec le code via le lien
https://www.cjoint.com/c/FAAk1BvUwih
Merci d'avance pour votre aide
A voir également:
- Macro _Exporter des données au format csv
- Fuite données maif - Guide
- Format epub - Guide
- Format factory - Télécharger - Conversion & Codecs
- Hp usb disk storage format tool - Télécharger - Stockage
- Format apfs - Guide
2 réponses
Bonjour
voila une nouvelle macro
peux etre plus simple pour toi
A+
Maurice
voila une nouvelle macro
peux etre plus simple pour toi
Sub ExportCsv()
Application.ScreenUpdating = False
Nom = "Testcsv"
Ext = ".csv"
Fichier = Nom & Ext
chemin = ActiveWorkbook.Path & Application.PathSeparator
CheminFiche = chemin & Fichier
Sep = ";"
'Sep = vbTab
Nlig = Cells(Rows.Count, 1).End(xlUp).Row
Set plage = Range("A1:C" & Nlig)
Open CheminFiche For Output As #1
For Each Lig In plage.Rows
Tmp = ""
For Each Cel In Lig.Cells
Tmp = Tmp & CStr(Cel.Text) & Sep
Next
Print #1, Tmp
Next
Close
Set plage = Nothing
Application.ScreenUpdating = True
MsgBox "Terminer"
End Sub
A+
Maurice
Bonjour
L'objet "ADODB.Stream" ne me semble pas adapté pour les fichier texte voir ici
En faisant un brin de ménage dans ton code ceci devrait (à peu près)fonctionner, mais la solution de Maurice, que je salue au passage, est plus adaptée
Cdlmnt
L'objet "ADODB.Stream" ne me semble pas adapté pour les fichier texte voir ici
En faisant un brin de ménage dans ton code ceci devrait (à peu près)fonctionner, mais la solution de Maurice, que je salue au passage, est plus adaptée
Option Explicit
Sub exporter()
Enregistrerdonnees "semecartour2"
End Sub
Sub Enregistrerdonnees(ByVal Fichier As String)
Dim Ligne As Long, NombreLigne As Long, NombreColonne As Long, Colonne As Long
Dim oStream As Object
Dim feuille As String, chemin As String
Dim s As String
NombreLigne = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
NombreColonne = ActiveSheet.Cells(2, Columns.Count).End(xlToLeft).Column
chemin = Application.ActiveWorkbook.Path
feuille = ActiveSheet.Name
Set oStream = CreateObject("ADODB.Stream")
oStream.Open
oStream.Position = 0
oStream.Charset = "UTF-8"
For Ligne = 1 To NombreLigne
s = Cells(Ligne, 1)
For Colonne = 2 To NombreColonne
s = s & ";" & Cells(Ligne, Colonne)
Next Colonne
oStream.writeText s & Chr(10)
Next Ligne
oStream.savetofile chemin & "\" & Fichier & ".csv"
Set oStream = Nothing
End Sub
Cdlmnt
Mais je souhaiterais partir des codes dans mon fichier.
l'idée c'est de comprendre pourquoi mon code ne fonctionne pas.
Auriez-vous une idée ?
Merci d'avance