Conversion de DBF vers CSV

Fermé
VBA_93 - Modifié par jordane45 le 19/12/2016 à 11:44
 VBA_93 - 19 déc. 2016 à 17:08
Bonjour à tous,
Actuellement j'essaye de convertir des fichiers .dbf en fichiers .csv avec une macro Excel 2010.
Voila ce que j'ai fait :

Sub ConvertDBF_to_CSV()
Dim strDocPath As String
Dim strCurrentFile As String
Dim Fname As String
Dim sFiles
Dim x As Integer, y As Integer
Application.ScreenUpdating = False

x = 0
y = 0
sFiles = Dir(ThisWorkbook.Path & "\*.dbf")
'count the files
Do Until sFiles = ""
x = x + 1
sFiles = Dir
Loop

strDocPath = "C:\Users\fg733136\Documents\Projet Horaire PCC\03SABRAQUE corrigé\03SABRAQUE corrigé"
'strCurrentFile = Dir(strDocPath & "*.*")
strCurrentFile = Dir(strDocPath & "*.dbf")

Do While strCurrentFile <> ""
y = y + 1
'display current status on status bar
Application.StatusBar = "Converting " & y & " of " & x
Workbooks.Open Filename:=strDocPath & strCurrentFile
Fname = Left$(strCurrentFile, Len(strCurrentFile) - 4) & ".csv"
ActiveWorkbook.SaveAs Filename:=strDocPath & Fname, FileFormat:=6, CreateBackup:=False, local:=True

strCurrentFile = Dir
Loop
Application.StatusBar = False 'release the status bar back to excel
Application.ScreenUpdating = True
End Sub

EDIT : Ajout des balises de code

Je la lance mais je n'ai aucun résultat ...
Je demande donc votre aide !
J'oubliais quelques informations supplémentaires :
-Mon Excel 2010 est en français
-Mon fichier avec la macro est dans le même dossier que mes fichiers .dbf
Merci d'avance pour vos réponses
A voir également:

2 réponses

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
19 déc. 2016 à 12:26
Bonjour,

Il ne faut pas que le nom de dossier se termine par "\" ?
Si tu fais un déboguage, tu vois qu'il ne trouve aucun fichier normalement.

A+
0
Bonjour Zoul67,
Merci de ta réponse je l'ai enlevé mais je n'ai toujours aucun résultat...
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
Modifié par Zoul67 le 19/12/2016 à 14:07
J'ai oublié d'indiquer à quelle ligne je pensais détecter une erreur.
En ligne 21 : strCurrentFile = Dir(strDocPath & "*.dbf")
Or strDocPath = "C:\Users\fg733136\Documents\Projet Horaire PCC\03SABRAQUE corrigé\03SABRAQUE corrigé"
Donc strCurrentFile = Dir("C:\Users\fg733136\Documents\Projet Horaire PCC\03SABRAQUE corrigé\03SABRAQUE corrigé\*.dbf")

Il manque le \ souligné, je pense.
0
Comment tu fais le _ \souligné et de plus je le modifie au niveau du strDocPath??
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
19 déc. 2016 à 14:07
Il faut pas le souligner dans VBA, mais bien écrire
strDocPath = "C:\Users\fg733136\Documents\Projet Horaire PCC\03SABRAQUE corrigé\03SABRAQUE corrigé\"

(ça se termine par \ et pas par corrigé)
0
Ok c'est bon ca marche bien merci!!!! et du coup je voulais savoir pour créer l'interface l'écran excel pour afficher l'état de la conversion si ceux que j'avais écrit après était utile ou pas,
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
19 déc. 2016 à 14:45
Merci d'essayer d'être plus clair(e).
0