Rechercher tous les fichiers csv d'un repertoire et les importer en table dans Access

hellokitty94

XLDnaute Nouveau
Bonjour à tous!

J'essaie de récuperer tous les fichiers csv(j en ai un certain nombre) d'un répertoire fixe et de les importer dans des tables access distinctes avec la délimitation du ";" et comme nom de table le nom de fichier en enlevant le ".csv"
Je ne sais pas par ou commencer, je suis nulle en vba :(

Merci de votre aide.
 

hellokitty94

XLDnaute Nouveau
Re : Rechercher tous les fichiers csv d'un repertoire et les importer en table dans A

J'ai trouvé des sources interessantes et remixé le tout à ma sauce mais le code ne fonctionne pas :

Sub TransfertAllCsvInDir()

Dim rep As String
Dim Dossier As String
Dim Nom_Tbl As String

'obtient le premier fichier ou répertoire qui est dans "c:\"
Dossier = "C:\repertoire"
rep = Dir(Dossier & "*.CSV", vbDirectory)
'boucle tant que le répertoire n'a pas été entièrement parcouru
On Error GoTo Erreur
Do While (rep "")
'teste si c'est un fichier ou un répertoire
If (GetAttr(Dossier & rep) And vbDirectory) = vbDirectory Then
'MsgBox "Répertoire " & rep
Else
Nom_Tbl = Left(rep, Len(rep) - 4)

'On attache le fichier trouvé
DoCmd.TransferText acLinkDelim, , Nom_Tbl, Dossier & rep, True
'On Ajoute les données dans la table de destination
DoCmd.RunSQL "INSERT INTO Tabledest ( Champ1, Champ2, Champ3,Champ4 )SELECT Champ1 AS Expr1, Champ2 AS Expr2, Champ3 AS Expr3, Champ4 AS Expr4 FROM [" & Nom_Tbl & "];"
'On libère le fichier
DoCmd.DeleteObject acTable, Nom_Tbl
End If
Suite:
'passe à l'élément suivant
rep = Dir
Loop
GoTo Fin
Erreur:
Fin:
End Sub

Lorsque je lance le deboogage rien ne se passe... J'ai pourtant ajouté la reference DAO 3.6!
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote