Eclater un fichier excel en csv
Bonjour,
Chaque semaine je reçois un fichier excel avec +/- 10 onglets :
Ce fichier est à éclater en autant de fichier que d'onglets. (si 10 feuilles alors 10 fichiers à générer).
A noter on dispose au départ d'un fichier XLS ou XLSX .
L'éclatement doit générer autant de fichiers CSV que de feuilles dans le fichier de départ.
Autre contrainte .
Le code VB doit être indépendant du fichier excel. C'est à dire un script en dehors du fichiers excel. En somme le code VB est à taper sur un bloc note et devra porter l'extension ".vb".
J'ai mis la main sur un code que j'avais , mais celui ci ne fait pas exactement ce que je veux :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| Private Sub CommandButton1_Click()
Dim nom_feuille_classeur As String
Dim nom_document As String
Dim trigramme_apv As String
Dim nouveau_fichier As String
Dim repertoire_de_sauvegarde As String
Dim lien_nouveau_fichier As String
Dim Ws As Worksheet
Dim Wb As Workbook
Set Ws = ActiveSheet
'nom_feuille_classeur = ActiveSheet.Name ' recuperation nom de la feuille dans le classeur de départ
Set Wb = Workbooks.Add
trigramme_apv = Range("D6").Value ' recuperation nom de AVP
Ws.Copy before:=Wb.Sheets(1)
repertoire_de_sauvegarde = "M:\" ' nom repertoire ou mettre le nouveau fichier
nouveau_fichier = Format(Date, "yyyymmdd") & " " & Ws.Range("D6") & " APV " & Ws.Name & " adherents .xlsm " ' nom du nouveau document
lien_nouveau_fichier = repertoire_de_sauvegarde & nouveau_fichier ' nouveau document
Wb.SaveAs Filename:=lien_nouveau_fichier ' lien nouveau fichier >> problème avec le ActiveSheet.SaveAs et le Filename:= , c est l erreur 1004
Wb.Close False
End Sub |
Merci de m'aiguiller ;)