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

Macros et VBA Excel Discussion :

Problème d'accès à une base de données.


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2003
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 120
    Points : 65
    Points
    65
    Par défaut Problème d'accès à une base de données.
    Bonjour à tous,

    J'ai un fichier que j'ai converti en format csv. Je voulais l'accéder en utilisant le code suivant :
    code :
    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
     
    Sub GetCol()
    Dim strPath As String
    Dim strTable As String
    Dim strFolder As String
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    strPath = "d:\mabase\fichier.csv"
    strTable = Right(strPath, Len(strPath) - InStrRev(strPath, "\"))
    strFolder = Left(strPath, InStrRev(strPath, "\") - 1)
    Set db = DAO.OpenDatabase(strFolder, False, False, _
    "Text;Database=" & strFolder & ";HDR=NO;Table=" & strTable)
    ' F1 = Field numéro 1
    Set rs = db.OpenRecordset("SELECT F1 FROM [" & strTable & "]", DAO.dbOpenSnapshot, _
    DAO.dbReadOnly, DAO.dbReadOnly)
    ActiveSheet.Range("A2").CopyFromRecordset rs
    Set rs = Nothing
    Set db = Nothing
    End Sub
    La compilation me donne l'erreur suivante : Erreur de compilation : Type défini par l'utilisateur non défini.
    Et pourtant c'est un code que j'ai récupéré sur le faq de développez.com et l'a adapté à mon problème.

    Merci d'avance de m'aider dans ce sens.

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    et avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim db As New DAO.Database
    Dim rs As New DAO.Recordset

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2003
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 120
    Points : 65
    Points
    65
    Par défaut Test non concluant
    Bonsoir!

    J'ai relancé la compilation mais c'est la même erreur.

  4. #4
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Essai de mettre tes lignes en commentaire et de libérer en fur et a mesure afin de savoir qu'elle ligne ne convient pas

  5. #5
    Membre du Club
    Inscrit en
    Novembre 2003
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 120
    Points : 65
    Points
    65
    Par défaut Lignes de déclaration
    L'erreur se produit d'abord au niveau des déclarations qui commencent par DAO puis au niveau des méthodes qui commencent par DAO.
    J'ai cherché dans l'explorateur d'objets DAO et je n'en trouve pas.
    J'aimerai savoir si l'objet DAO n'est plus utilisé dans msoffice 2003.

  6. #6
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Tu peux toujours utiliser DAO si tu a installé le MDAC 2.5 ou les pilotes jet4.
    Je te conseillerais d'utiliser ADO plutot que DAO si ton fichier à ambition à être diffusé;
    pour ADO référence a ajouter Microsoft AcyiveX DataObject 2.x Library
    (pour info j'utilise 2.0 car présent en natif sur tous les postes)

  7. #7
    Membre du Club
    Inscrit en
    Novembre 2003
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 120
    Points : 65
    Points
    65
    Par défaut Solution trouvée
    Bonjour!

    J'ai pu résoudre le problème. Ce qui me bloquait, c'est la référence aux objets DAO.
    Merci de ta contribution.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/05/2009, 04h56
  2. Problème d'accès à une base de données
    Par hibao dans le forum DB2
    Réponses: 3
    Dernier message: 02/07/2008, 09h46
  3. Réponses: 3
    Dernier message: 08/06/2008, 21h08
  4. Problème d'accès à une base de données
    Par senactu dans le forum Débuter
    Réponses: 2
    Dernier message: 19/12/2006, 21h38
  5. Problème d'accès à une base de données
    Par Kankuro dans le forum Administration
    Réponses: 2
    Dernier message: 03/12/2006, 03h15

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