Vba Excel2007 - Exporter feuilles en CSV
Palteza
Messages postés
82
Statut
Membre
-
eriiic Messages postés 25847 Statut Contributeur -
eriiic Messages postés 25847 Statut Contributeur -
Bonjour à tous
Je possède un code pour exporter une feuille, et une seule, d'un classeur vers un nouveau fichier csv
Cependant je voudrais pouvoir en exporter plusieurs à la fois sur une seule macro.
Sur le code qui suit, on ne peut pas ajouter basiquement d'autres feuilles (il affiche alors l'erreur "L'indice n'appartient pas à la sélection" sur la ligne de la nouvelle feuille copiée). Il semble ne marcher que pour une seule feuille.
Si quelqu'un à la solution ça serait cool. Merci d'avance
Sub Bouton72_Clic()
Sheets("Données_Statistiques").Visible = True
Sheets("Données_Statistiques").Copy
ActiveWorkbook.SaveAs Filename:= _
"c:\BDD_Enquêtes.csv", FileFormat:=xlCSV _
, CreateBackup:=False
End Sub
Je possède un code pour exporter une feuille, et une seule, d'un classeur vers un nouveau fichier csv
Cependant je voudrais pouvoir en exporter plusieurs à la fois sur une seule macro.
Sur le code qui suit, on ne peut pas ajouter basiquement d'autres feuilles (il affiche alors l'erreur "L'indice n'appartient pas à la sélection" sur la ligne de la nouvelle feuille copiée). Il semble ne marcher que pour une seule feuille.
Si quelqu'un à la solution ça serait cool. Merci d'avance
Sub Bouton72_Clic()
Sheets("Données_Statistiques").Visible = True
Sheets("Données_Statistiques").Copy
ActiveWorkbook.SaveAs Filename:= _
"c:\BDD_Enquêtes.csv", FileFormat:=xlCSV _
, CreateBackup:=False
End Sub
A voir également:
- Vba Excel2007 - Exporter feuilles en CSV
- Comment faire un livret avec des feuilles a4 - Guide
- Exporter favoris chrome - Guide
- Exporter conversation sms android - Guide
- Exporter favoris firefox - Guide
- Bruler des feuilles de laurier - Guide
3 réponses
Bonjour,
Comme tu ne précises pas si toutes les feuilles doivent être enregistrées et que de plus le nom de fichier est différent du nom d'onglet je te propose ceci :
-le nom_de_fichier.csv voulu doit se trouver dans une cellule de la feuille (ici A1)
-sélectionner les feuilles concernées avant de lancer la macro (clic su r le 1er onglet, shift+clic sur le dernier, ctrl+clic pour sélectionner/déselectionner les onglets individuellement)
code à mettre dans un module :
eric
Comme tu ne précises pas si toutes les feuilles doivent être enregistrées et que de plus le nom de fichier est différent du nom d'onglet je te propose ceci :
-le nom_de_fichier.csv voulu doit se trouver dans une cellule de la feuille (ici A1)
-sélectionner les feuilles concernées avant de lancer la macro (clic su r le 1er onglet, shift+clic sur le dernier, ctrl+clic pour sélectionner/déselectionner les onglets individuellement)
code à mettre dans un module :
Sub copyCSV()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Windows(1).SelectedSheets
fich = "D:\" & ws.[A1].Value
ws.SaveAs Filename:=fich, FileFormat:=xlCSV, CreateBackup:=False
Next ws
End Sub
eric