VBA - ouvrir un fichier .dbf depuis une macro

Résolu/Fermé
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
- 16 déc. 2011 à 12:32
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
- 19 déc. 2011 à 01:07
Bonjour,

j'ai beau retourner le problème dans tous les sens, pas moyen d'ouvrir un fichier ".dbf" depuis une macro.

le problème c'est que mon boulot consiste à travailler sur toute une palanquée de tableaux .dbf, qui sont en fait les tables d'un logiciel d'exploitation utilisé dans l'entreprise où je travaille.
Jusque là, la seule solution que j'ai c'est de les convertir manuellement en fichiers excel, ce qui me pose 2 problèmes majeurs :
- il y en a au moins 200 et ils font tous entre 5 et 120 Mo, je ne vous dis pas le temps qu'il faudrait que je passe à les convertir.
- le fait de les convertir "fige l'information" (car j'ouvre le fichier dbf et je l'enregistre sous un format xlsx) et je perds du coup la perspective de temps réel, qui m'est indispensable.

Je cherche donc un moyen, car je me doute qu'il existe, d'ouvrir un fichier dbf directement depuis mes macros.

Je n'ai pas besoin de travailler dessus (surtout pas d'ailleurs) il faut juste que je puisse aller lire dedans.

Notre RSI m'a parlé d'une fonction "ouvrir" avec un argument "type" que je dois préciser, mais je sèche complet.

Merci d'avance pour votre aide. Je dois créer un cube (pour ceux à qui ça parle) et tout repose sur l'accès à ces fichiers... Je suis contraint de passer par excel et le vba.

4 réponses

lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 194
16 déc. 2011 à 12:48
Bonjour,
Pourquoi pas employer l'éditeur de macros ?
Tu pourrais ensuite l'adapter.
A+
0
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 194
16 déc. 2011 à 13:05
J'ai ouvert un dbf avec excel et apparemment ça ne pose aucun problème.
Mais je sais qu'avec les nouveau Excel (à partir du 2007) l'éditeur de macros ne fonctionne pratiquement plus.
La ligne ..
    Workbooks.Open Filename:="C:\Test\NomFichier.DBF"

Ouvre un dbf dans un nouveau classeur, pas besoin de le sauver pour y travailler.
A+
0
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
32
16 déc. 2011 à 13:12
De mémoire (car là je ne suis pas su boulot, cette ligne me sort une erreur de "type".

Je vais faire un test sur mon pc et je te tiens au jus

(désolé, ça fait 2 fois que tu apportes une solution toute simple à des obstacles qui me paraissent des montagnes...)
0
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
32
16 déc. 2011 à 13:33
Sur ma bécane ça a l'air de marcher... J'ai presque honte de voir que la solution est si simple...

Si ça plante au boulot je reviendrai ici

Merci à toi
0
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
32
Modifié par Phoenellion le 19/12/2011 à 01:07
Bonjour, je confirme ça fonctionne au boulot.

En fait, en navigant dans l'explorateur windows, si je fais
"clique droit\ouvrir avec\Excel 2010" l'ouverture de fichier DBF est refusée.

La commande associée VBA

FileToOpen = Application.GetOpenFilename
Workbooks.Open FileToOpen

générait donc une erreur aussi.

Je n'ai pass pensé à faire un Open Filename, car la seule manière que j'avais trouvé d'ouvrir ces fichiers dbf hors vba était de faire un glisser déposer dans ula fenêtre excel préallablement ouverte.

Merci pour cette solution, la prochaine fois j'essaierai de faire simple avant de faire compliqué...

@+

=> Résolu !
0