Peut on exporter des données Excel vers un fichier .csv
Fermé
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
-
23 mars 2013 à 09:07
f894009 Messages postés 17181 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 21 mars 2024 - 25 mars 2013 à 13:05
f894009 Messages postés 17181 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 21 mars 2024 - 25 mars 2013 à 13:05
A voir également:
- Peut on exporter des données Excel vers un fichier .csv
- Fichier rar - Guide
- Liste déroulante excel - Guide
- Fichier host - Guide
- Fichier iso - Guide
- Comment réduire la taille d'un fichier - Guide
17 réponses
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
1
23 mars 2013 à 14:36
23 mars 2013 à 14:36
Salut f894009
j'ai un tableau sur excel et je veux faire un copier de chaque ligne et le coller dans un fichier .csv qui lui correspond
le problème c que j'ai fai une macro mais ca n'a pas marché
Trader
j'ai un tableau sur excel et je veux faire un copier de chaque ligne et le coller dans un fichier .csv qui lui correspond
le problème c que j'ai fai une macro mais ca n'a pas marché
Trader
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
23 mars 2013 à 16:36
23 mars 2013 à 16:36
Re,
le moyen le plus sur pour une plage de donnees excel vers ficier csv:
https://www.developpez.net/forums/d1194559/logiciels/microsoft-office/excel/contribuez/export-csv-plage-selectionnee/
le moyen le plus sur pour une plage de donnees excel vers ficier csv:
https://www.developpez.net/forums/d1194559/logiciels/microsoft-office/excel/contribuez/export-csv-plage-selectionnee/
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
1
23 mars 2013 à 22:36
23 mars 2013 à 22:36
Re
merci pour le lien mais en faite ce code correspond à transformer les séparateurs "," en ";" or mon problème consiste à copier une ligne (à partir d'un fichier .xlsm) et la coller dans un fichier .csv avec comme séparateurs bien sur ";"
le problème c pas dans le faite que j'obtiens des séparateurs "," mais qu'il m'endommage la dernière colonne genre tous les chiffre comme 785413 il les transforment en 78,,,,,
en faite j'ai crée ce code mais le fichier :
Sub Macro3()
Application.ScreenUpdating = False
Rep = "C:\Users\toshiba\Desktop\Others\"
FichD = ActiveWorkbook.Name
FichTest = "TestExcel.csv"
Workbooks.OpenText Filename:="C:\Users\toshiba\Desktop\Others\TestExcel.csv", StartRow:=1, _
DataType:=xlDelimited, TextQualifier:=xlNone, ConsecutiveDelimiter _
:=False, Semicolon:=True, DecimalSeparator:="."
Workbooks.Open Rep & FichTest
Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
With Workbooks(FichD)
.Sheets("TestExcel").Range("A1:F1").Copy
Workbooks(FichTest).Sheets("TestExcel").Range("A1:G1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:F1").Select
Selection.Copy
Range("A1:F1").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A2:F2").Select
Application.CutCopyMode = False
Selection.Copy
Range("A1:F1").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWorkbook.Save
ActiveWindow.Close
End With
End Sub
merci pour le lien mais en faite ce code correspond à transformer les séparateurs "," en ";" or mon problème consiste à copier une ligne (à partir d'un fichier .xlsm) et la coller dans un fichier .csv avec comme séparateurs bien sur ";"
le problème c pas dans le faite que j'obtiens des séparateurs "," mais qu'il m'endommage la dernière colonne genre tous les chiffre comme 785413 il les transforment en 78,,,,,
en faite j'ai crée ce code mais le fichier :
Sub Macro3()
Application.ScreenUpdating = False
Rep = "C:\Users\toshiba\Desktop\Others\"
FichD = ActiveWorkbook.Name
FichTest = "TestExcel.csv"
Workbooks.OpenText Filename:="C:\Users\toshiba\Desktop\Others\TestExcel.csv", StartRow:=1, _
DataType:=xlDelimited, TextQualifier:=xlNone, ConsecutiveDelimiter _
:=False, Semicolon:=True, DecimalSeparator:="."
Workbooks.Open Rep & FichTest
Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
With Workbooks(FichD)
.Sheets("TestExcel").Range("A1:F1").Copy
Workbooks(FichTest).Sheets("TestExcel").Range("A1:G1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:F1").Select
Selection.Copy
Range("A1:F1").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A2:F2").Select
Application.CutCopyMode = False
Selection.Copy
Range("A1:F1").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWorkbook.Save
ActiveWindow.Close
End With
End Sub
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
24 mars 2013 à 07:40
24 mars 2013 à 07:40
Bonjour,
merci pour le lien mais en faite ce code correspond à transformer les séparateurs "," en ";" Non, il permet de creer un fichier format csv separateur ;. Il se peut que vous ne connaissiez pas la base des creations de fichier .txt ou .dat ou .csv en programmation pure.
merci pour le lien mais en faite ce code correspond à transformer les séparateurs "," en ";" Non, il permet de creer un fichier format csv separateur ;. Il se peut que vous ne connaissiez pas la base des creations de fichier .txt ou .dat ou .csv en programmation pure.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
1
24 mars 2013 à 08:50
24 mars 2013 à 08:50
oui je suis entrain d'apprendre, mais est ce qu'il y'a une solution à ce problème ?
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
24 mars 2013 à 09:42
24 mars 2013 à 09:42
Re,
Apres quelquessssssss essais avec excel uniquement
ouvre fichier csv comme un fichier xls(x) (local:=true)
copie/coller des cellules
sauve et ferme csv, fichier xlsm
ferme xlsm
Petits details: si vous ouvrez le csv, les donnees sont dans une cellule par ligne, separees par une virgule---->c'est tout a fait normal. En effet, pour une raison qui lui appartient, excel fait une difference entre un fichier xls(x) enregistre manuellement en csv et la meme chose avec une macro, mais ceci n'est qu'un affichage. Comme je ne sais pas ce que vous voulez faire de ce fichier csv, est-ce important l'affichage avec une donnee par cellule??????
A+
Apres quelquessssssss essais avec excel uniquement
Sub Macro5() Application.DisplayAlerts = False Workbooks.Open Filename:="D:\_cles\TestExcel.csv", local:=True Windows("test.xlsm").Activate Range("A1:F5").Select Selection.Copy Windows("TestExcel.csv").Activate Range("A1").Select ActiveSheet.Paste Application.CutCopyMode = False ActiveWorkbook.Save ActiveWorkbook.Save ActiveWorkbook.Close End Sub
ouvre fichier csv comme un fichier xls(x) (local:=true)
copie/coller des cellules
sauve et ferme csv, fichier xlsm
ferme xlsm
Petits details: si vous ouvrez le csv, les donnees sont dans une cellule par ligne, separees par une virgule---->c'est tout a fait normal. En effet, pour une raison qui lui appartient, excel fait une difference entre un fichier xls(x) enregistre manuellement en csv et la meme chose avec une macro, mais ceci n'est qu'un affichage. Comme je ne sais pas ce que vous voulez faire de ce fichier csv, est-ce important l'affichage avec une donnee par cellule??????
A+
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
1
24 mars 2013 à 10:19
24 mars 2013 à 10:19
re
je vais simplifier le problème
mon problème consiste a faire un copier coller d'un fichier excel vers un fichier .csv
je veux copier un tableau qui existe dans le fichier Daily-backup.xlsm et le coller dans un fichier qui s'appelle Test.csv
pour être plus clair et plus précis voici les liens aux deux docuements:
j'ai intégré votre macro avec des modifications pour être plus rapide
le fichier test.csv :https://www.cjoint.com/c/CCykeMG4sGO
le fichier source.xlsm: https://www.cjoint.com/c/CCykp4fg9D1 (la macro qui correspond d'appelle copiercoller Test, juste il faut modifier la path du fichier)
vous pouvez tester directement
je vais simplifier le problème
mon problème consiste a faire un copier coller d'un fichier excel vers un fichier .csv
je veux copier un tableau qui existe dans le fichier Daily-backup.xlsm et le coller dans un fichier qui s'appelle Test.csv
pour être plus clair et plus précis voici les liens aux deux docuements:
j'ai intégré votre macro avec des modifications pour être plus rapide
le fichier test.csv :https://www.cjoint.com/c/CCykeMG4sGO
le fichier source.xlsm: https://www.cjoint.com/c/CCykp4fg9D1 (la macro qui correspond d'appelle copiercoller Test, juste il faut modifier la path du fichier)
vous pouvez tester directement
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
24 mars 2013 à 10:48
24 mars 2013 à 10:48
Re,
fichier xlsm et csv
https://www.cjoint.com/c/CCykUSx0bkB
vous n'avez pas repondu a la question:
Comme je ne sais pas ce que vous voulez faire de ce fichier csv, est-ce important l'affichage avec une donnee par cellule??????
A+
fichier xlsm et csv
https://www.cjoint.com/c/CCykUSx0bkB
vous n'avez pas repondu a la question:
Comme je ne sais pas ce que vous voulez faire de ce fichier csv, est-ce important l'affichage avec une donnee par cellule??????
A+
bg62
Messages postés
23582
Date d'inscription
samedi 22 octobre 2005
Statut
Modérateur
Dernière intervention
22 mars 2024
2 359
24 mars 2013 à 11:44
24 mars 2013 à 11:44
pourquoi une 'macro' .... ???
il suffit de Sélectionner l'option lors de l'enregistrement , non ;)
il suffit de Sélectionner l'option lors de l'enregistrement , non ;)
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
24 mars 2013 à 11:48
24 mars 2013 à 11:48
Bonjour bg62,
TraderAS demande une macro pour enregistrer une plage de cellule dans un fichier csv en automatique, donc macro.
A+
TraderAS demande une macro pour enregistrer une plage de cellule dans un fichier csv en automatique, donc macro.
A+
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
1
24 mars 2013 à 21:13
24 mars 2013 à 21:13
Salut f894009
oui c'est trés important le séparateur ";" car il y'a une application qui va saisir les données sous forme de fichiers .csv avec séparateurs ";" et donc je dois avoir ce genre de séparateur ;)
oui c'est trés important le séparateur ";" car il y'a une application qui va saisir les données sous forme de fichiers .csv avec séparateurs ";" et donc je dois avoir ce genre de séparateur ;)
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
25 mars 2013 à 08:40
25 mars 2013 à 08:40
Bonjour,
Methode a l'ancienne,mais 100% fiable
Sub ExportCSV()
Dim LigneCSV As String
Dim PlageCSV As Range
Dim Ligne As Integer, Colonne As Integer, Nb_Ligne As Integer, Nb_Colonne As Integer
'Fermeture ficher si ouvert
Close
'Plage CSV
Set PlageCSV = Worksheets("test").Range("A1:F5")
'Ouverture du fichier de sortie
Open "D:\_cles\testexcel.csv" For Output As #1
'Butees de comptage
Nb_Ligne = PlageCSV.Rows.Count
Nb_Colonne = PlageCSV.Columns.Count
'Boucle sur la plage et ajoute les lignes au fichier
For Ligne = 1 To Nb_Ligne
For Colonne = 1 To Nb_Colonne
If LigneCSV <> "" Then
LigneCSV = LigneCSV & ";"
End If
'construction ligne
LigneCSV = LigneCSV & PlageCSV.Cells(Ligne, Colonne).Value
Next Colonne
'Enregistrement ligne
Print #1, LigneCSV
LigneCSV = ""
Next Ligne
'Fermeture du fichier
Close #1
End Sub
A+
Methode a l'ancienne,mais 100% fiable
Sub ExportCSV()
Dim LigneCSV As String
Dim PlageCSV As Range
Dim Ligne As Integer, Colonne As Integer, Nb_Ligne As Integer, Nb_Colonne As Integer
'Fermeture ficher si ouvert
Close
'Plage CSV
Set PlageCSV = Worksheets("test").Range("A1:F5")
'Ouverture du fichier de sortie
Open "D:\_cles\testexcel.csv" For Output As #1
'Butees de comptage
Nb_Ligne = PlageCSV.Rows.Count
Nb_Colonne = PlageCSV.Columns.Count
'Boucle sur la plage et ajoute les lignes au fichier
For Ligne = 1 To Nb_Ligne
For Colonne = 1 To Nb_Colonne
If LigneCSV <> "" Then
LigneCSV = LigneCSV & ";"
End If
'construction ligne
LigneCSV = LigneCSV & PlageCSV.Cells(Ligne, Colonne).Value
Next Colonne
'Enregistrement ligne
Print #1, LigneCSV
LigneCSV = ""
Next Ligne
'Fermeture du fichier
Close #1
End Sub
A+
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
1
25 mars 2013 à 09:06
25 mars 2013 à 09:06
Bonjour f894009 et merci pour votre précieuse aide
en faite j'ai appliqué votre dernier code mais je trouve un problème au niveau de la ligne Nb_Ligne = PlageCSV.Rows.Count qui s'affiche en jaune .
mais bon puisque j'ai posé cette question sur plusieurs tutorials, voici une nouvelle idée, car je crois que le problème est d'envergure
voici la nouvelle proposition et voire si vous pouvez m'aider:
je dois avoir une fonctionnalité qui me permet d'écraser les fichiers (.csv) anciens (j-1) qui existent dans un même dossier et transformer chaque chaque fichier (presque 50) fichier .xls en fichier .csv avec séparateur ";", ceci à travers une macro qui contient tout ca, c'est possible ?
Trader
en faite j'ai appliqué votre dernier code mais je trouve un problème au niveau de la ligne Nb_Ligne = PlageCSV.Rows.Count qui s'affiche en jaune .
mais bon puisque j'ai posé cette question sur plusieurs tutorials, voici une nouvelle idée, car je crois que le problème est d'envergure
voici la nouvelle proposition et voire si vous pouvez m'aider:
je dois avoir une fonctionnalité qui me permet d'écraser les fichiers (.csv) anciens (j-1) qui existent dans un même dossier et transformer chaque chaque fichier (presque 50) fichier .xls en fichier .csv avec séparateur ";", ceci à travers une macro qui contient tout ca, c'est possible ?
Trader
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
25 mars 2013 à 10:53
25 mars 2013 à 10:53
Re,
Nb_Ligne = PlageCSV.Rows.Count qui s'affiche en jaune . Pas chez moi!!
en faite j'ai appliqué votre dernier code mais je trouve un problème recopie en entier (avec adaptation des noms), partiellement! ???????
je dois avoir une fonctionnalité qui me permet d'écraser les fichiers (.csv) anciens (j-1) qui existent dans un même dossier et transformer chaque chaque fichier (presque 50) fichier .xls en fichier .csv avec séparateur ";", ceci à travers une macro qui contient tout ca, c'est possible ? Comprends pas tout !!!
A+
Nb_Ligne = PlageCSV.Rows.Count qui s'affiche en jaune . Pas chez moi!!
en faite j'ai appliqué votre dernier code mais je trouve un problème recopie en entier (avec adaptation des noms), partiellement! ???????
je dois avoir une fonctionnalité qui me permet d'écraser les fichiers (.csv) anciens (j-1) qui existent dans un même dossier et transformer chaque chaque fichier (presque 50) fichier .xls en fichier .csv avec séparateur ";", ceci à travers une macro qui contient tout ca, c'est possible ? Comprends pas tout !!!
A+
TraderAS
Messages postés
110
Date d'inscription
lundi 3 décembre 2012
Statut
Membre
Dernière intervention
26 avril 2018
1
25 mars 2013 à 12:23
25 mars 2013 à 12:23
Re
d'après ce que j'ai lu le problème de copier coller une nouvelle ligne d'un fichier excel dans un fichier csv est trés compliquée, car d'après ce que j'ai lu sur un autre forum, un fichiers .txt et .csv correspond à une feuille entière ET unique.
donc je me suis dis pourquoi pas aller dans une autre logique, c'est à dire aller insérer les lignes dans des fichiers distincts .xls puis les modifier en csv
une autre façon de voire les choses ;)
Trader ;)
d'après ce que j'ai lu le problème de copier coller une nouvelle ligne d'un fichier excel dans un fichier csv est trés compliquée, car d'après ce que j'ai lu sur un autre forum, un fichiers .txt et .csv correspond à une feuille entière ET unique.
donc je me suis dis pourquoi pas aller dans une autre logique, c'est à dire aller insérer les lignes dans des fichiers distincts .xls puis les modifier en csv
une autre façon de voire les choses ;)
Trader ;)
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
25 mars 2013 à 13:05
25 mars 2013 à 13:05
Re,
Oui, cela peut se faire, avant de vous donner le code a l'ancienne, j'avais regarde dans cette voie.
A+
Oui, cela peut se faire, avant de vous donner le code a l'ancienne, j'avais regarde dans cette voie.
A+
f894009
Messages postés
17181
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
21 mars 2024
1 701
23 mars 2013 à 09:34
23 mars 2013 à 09:34
bonjour,
export onglet, plage de cellules ou .......
export onglet, plage de cellules ou .......