IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Ouvrir un fichier .dbf avec VBS


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut Ouvrir un fichier .dbf avec VBS
    Bonjour à tous!

    Voila, j'ai comme mission de synchroniser une base de donnée (clients) au format .dbf à un logiciel de planning (planningPME)

    Cette opération ce fait par une exécution d'un script .VBS au lancement du logiciel.

    J'ai déjà réussi à effectuer une synchronisation à un fichier .xls avec le script suivant, mais j'aimerai maintenant le faire pour un fichier .dbf

    Je vois deux solutions:

    - tenter de lire directement le fichier .dbs :échec pour moi jusque là....
    - convertir le fichier .dbf en .xls avec le script VBS: cela est possible?



    Voila, merci d'avance pour ceux qui pourraient m'aider

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    ---------------------------------------------------------------
    'Connection to PlanningPME
    'Register PlanningPME.dll before -> c:\windows\system32\regsvr32 
     
    PlanningPME.dll
    Set ppme = CreateObject("PlanningPME.Application")
    ppme.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Rose\Desktop\test_import.pp"
    ppme.Connect
     
    'Connection to Excel
     
    Set Connection = CreateObject("ADODB.Connection")
    'VB
    Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\clients.dbf; Extended Properties=" & Chr(34) & "Excel 8.0;HDR=Yes;IMEX=1" & Chr(34)"
     
    'pour le fichier dbf j'ai essayé sans succès avec ça: Extended Properties=dBASE IV
     
    Set rs = CreateObject("ADODB.Recordset")
    Set search = CreateObject("ADODB.Recordset")
    rs.Open "select * from [defa0006$]", Connection
     
    'boucle pour importer les donnees
    While rs.EOF = False
        ..........................
    rs.MoveNext
    Wend

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut Le fichier .dbf ne veut toujours pas s'ouvrir....
    Bon j'en suis là pour l'instant mais j'ai toujours cette erreur 80004005
    "n'est pas un chemin d'accès valide. Assurez-vous que le nom du chemin d'accès est correct et qu'une connexion est établie avec le serveur sur lequel réside le fichier"

    Voici mon code actuel:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    'Connection to PlanningPME
    'Register PlanningPME.dll before -> c:\windows\system32\regsvr32 
     
    PlanningPME.dll
    Set ppme = CreateObject("PlanningPME.Application")
    ppme.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Rose\Desktop\test_import.pp"
    ppme.Connect
     
    'Connection to Excel
     
    Set Connection = CreateObject("ADODB.Connection")
    'VB
    Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\CLIENTS.dbf;Extended Properties=dBase III;"'     ---->>>ça bug ICI
     
     
    Set rs = CreateObject("ADODB.Recordset")
    Set search = CreateObject("ADODB.Recordset")
    rs.Open "select * from [defa0006$]", Connection
     
    'boucle pour importer les donnees
    While rs.EOF = False
        ..........................
    rs.MoveNext
    Wend

  3. #3
    Nouveau candidat au Club
    Inscrit en
    Juillet 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 2
    Par défaut
    Bonjour,

    Je pense que votre problème se situe en effet ici :
    Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\CLIENTS.dbf;Extended Properties=dBase III;"

    Sur le site http://www.connectionstrings.com/dbf-foxpro il semble qu'il ne faille pas préciser le chemin vers le fichier DBF mais directement vers le répertoire qui contient les fichiers

    Cordialement
    Arnaud CHARRE
    PlanningPME

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut Merci
    Merci beaucoup Arnaud, ça marche maintenant
    enfin presque.....

    Si je puis me permettre, cette fois ça bloque pour la sélection :
    rs.Open "select * from [defa0006$]", Connection

    ça me dit: Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'defa0006$'............

  5. #5
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    et c'est quoi defa0006$ ...? le nom d'une table de ta base de donnée?

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut nom BDD
    Oui, alors il s'agissait en fait du nom de la feuille du fichier .xls lorsque je faisait la synchronisation avec un fichier EXCEL

    Pour la faire avec le fichier .dbf, ma ligne de code actuelle est
    rs.Open "select * from [clients]", Connection

    avec client le nom de ma base de donnée (j'ai à peut près tout essayé, clients.dbf / clients$/.....)

    L'erreur est la suivante: La table externe n'est pas dans le format attendu.

    Pourtant j'ouvre bien avec Properties=dBase III

    Avez vous une idée?

Discussions similaires

  1. ouvrir un fichier log avec excel en vbs
    Par helpmeplz dans le forum VBScript
    Réponses: 4
    Dernier message: 15/09/2009, 01h11
  2. comment ouvrir un fichier XML avec excel
    Par ALCINA dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 24/03/2006, 14h42
  3. Peut-on ouvrir un fichier bmp avec la lib X11 ?
    Par caesarvanou dans le forum C
    Réponses: 7
    Dernier message: 10/02/2006, 18h32
  4. ouvrir un fichier Excel avec une requete perso
    Par legillou dans le forum Access
    Réponses: 9
    Dernier message: 21/06/2005, 15h14
  5. [java][Oracle]Ouvrir un fichier(blob) avec le browser
    Par marsup54 dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 11/09/2003, 13h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo