Extraction de fichier sur excel
Résolu
aaa
-
aaabbb Messages postés 7 Statut Membre -
aaabbb Messages postés 7 Statut Membre -
Bonjour,
J'aimerai créer une requête VBA afin d'extraire chaque jour un dossier . zip contenant des fichiers .csv
Puis, après extraction, je dois ouvrir ces fichiers .csv, les transformer en .xls(organisé en colonnes et non séparé par des virgules).
Puis j'aimerais que chaque fichier .xls journalier se mette dans un onglet différent dans un même classeur.
Salutations
J'aimerai créer une requête VBA afin d'extraire chaque jour un dossier . zip contenant des fichiers .csv
Puis, après extraction, je dois ouvrir ces fichiers .csv, les transformer en .xls(organisé en colonnes et non séparé par des virgules).
Puis j'aimerais que chaque fichier .xls journalier se mette dans un onglet différent dans un même classeur.
Salutations
4 réponses
-
En fait, peu importe...
Utilise ce code pour dézipper tes fichiers :
A ADAPTER :
- "C:\toto\Bureau" = Répertoire racine
- "MesFichiersDézippés" = Nom d'un sous-répertoire qui va être créé, dans le répertoire racine, pour recevoir les fichiers dézippés
- "C:\toto\Bureau\MonFichier.zip" = chemin d'accès complet de ton fichier .zip
Sub TestRun() 'Sources : http://excelexperts.com/Unzip-Files-using-VBA Call UnZip("C:\toto\Bureau", "MesFichiersDézippés", "C:\toto\Bureau\MonFichier.zip") End Sub Sub UnZip(strTargetPath As String, Dossier As String, Fname As Variant) Dim oApp As Object Dim FileNameFolder As Variant If Right(strTargetPath, 1) <> Application.PathSeparator Then strTargetPath = strTargetPath & Application.PathSeparator End If If Not (RepertoireExiste(strTargetPath & Dossier)) Then MkDir (strTargetPath & Dossier) Else MsgBox "Le répertoire : " & Chr(10) & Chr(10) & strTargetPath & Dossier & Chr(10) & Chr(10) & _ "existe déjà. Merci de le supprimer." Exit Sub End If FileNameFolder = strTargetPath & Dossier Set oApp = CreateObject("Shell.Application") oApp.Namespace(FileNameFolder).CopyHere oApp.Namespace(Fname).items End Sub Function RepertoireExiste(Chemin As String) As Boolean On Error Resume Next RepertoireExiste = GetAttr(Chemin) And vbDirectory End Function
-
Le "Monsieur" ironique était vraiment superflu...
Tu dis :
J'aimerai créer une requête VBA afin d'extraire chaque jour un dossier . zip
Quel est ton logiciel de compression/Extraction?
-
-
-
-
Si ça fonctionne, ça t'ennuierai beaucoup de :
1- signaler que le sujet est résolu (clic sur résolu dans le premier message du sujet)
2- dire merci
-