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

VB 6 et antérieur Discussion :

module .bas et connection


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de totoche
    Inscrit en
    Janvier 2004
    Messages
    1 090
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 090
    Par défaut module .bas et connection
    Bonjour,

    Je souhaite déclarer dans mon module.bas la chaine de connection pour l'utiliser dans les feuilles de mon projet, j'ai l'erreur suivante :
    Source de données introuvable et pilote non spécifié; comme si mon module1.bas n'était pas lu, pourtant le projet y démarre dessus.

    Module1.bas

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    Option Explicit
    Public fMainForm As FrmPrincipale
    _________________________________________________________
    Sub main()
    Set fMainForm = New FrmPrincipale
    fMainForm.Show
    End Sub
     
    Public rst As ADODB.Recordset
    _________________________________________________________
    Public Function InitConnStruct()
     
    'Déclaration des variables
    Dim cnx As ADODB.Connection
    'Instanciation des variables
    Set cnx = New ADODB.Connection
    'Définition du pilote de connexion
    cnx.Provider = "Microsoft.Jet.Oledb.3.51"
    'Définition de la chaîne de connexion
    cnx.ConnectionString = App.Path & "\structures.mdb"
    End FunctionForm1
     
    Code :
    Private Sub Form_Load()
    Set cnx = New ADODB.Connection
    Set rst = New ADODB.Recordset
    Call InitConnStruct
    'Ouverutre connection
    cnx.Open
    'Exécution de la requête
    rst.Open "SELECT * FROM structures", cnx
    End SubMerci de votre aide
    __________________

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    le titre de ton sujet est :

    module .bas et connection
    ce qui donnerait à entendre que le problème résulte de l'utilisation d'un module.

    Question : as-tu essayé, avant de décider d'un tel titre, de le faire sans utilisation de module, juste "pour voir" si le problème vient de l'utilisation d'un module ou s'il a une autre raison ?

    Je t'invite donc à le faire et à modifier ton titre en cas de découverte autre ...

  3. #3
    Membre éclairé
    Avatar de repié
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    335
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 335
    Par défaut
    est tu sûr de bien vouloir le provider
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Microsoft.Jet.Oledb.3.51
    et non pas le dernier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Microsoft.Jet.Oledb.4.0
    tu devrais bien déclarer ton objet cnx public
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public cnx as ADODB.connection
    dans la partie du module dédié aux déclarations

  4. #4
    Membre éprouvé Avatar de totoche
    Inscrit en
    Janvier 2004
    Messages
    1 090
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 090
    Par défaut
    Je viens de faire le test sans module la j'ai pas d'erreur;
    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
    27
     
    Private Sub Form_Load()
    'Déclaration des variables
    Dim cnx As ADODB.Connection
    Dim rst As ADODB.Recordset
     
    'Instanciation des variables
    Set cnx = New ADODB.Connection
    Set rst = New ADODB.Recordset
     
    'Définition du pilote de connexion
    cnx.Provider = "Microsoft.Jet.Oledb.3.51"
    'Définition de la chaîne de connexion
    cnx.ConnectionString = App.Path & "\Structures.mdb"
    'Ouverture de la base de données
    cnx.Open
     
    'Exécution de la requête
    rst.Open "SELECT RAISON_SOCIALE FROM T_Structures", cnx
    Do While Not rst.EOF
    MsgBox rst("RAISON_SOCIALE")
    rst.MoveNext
    Loop
    Set rst = Nothing
    Set cnx = Nothing
     
    End Sub
    Dès que je veux utiliser le module j'ai tjs la même erreur.
    Merci de votre aide

  5. #5
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    Bien, totoche,

    Alors maintenant mets-nous en rouge (edite) la partie de ce dernier code que tu voudrais mettre dans un module ...

  6. #6
    Membre éprouvé Avatar de totoche
    Inscrit en
    Janvier 2004
    Messages
    1 090
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 090
    Par défaut
    C'est bon merci repié,
    fallait déclarer en public cnx;

  7. #7
    Membre éclairé
    Avatar de repié
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    335
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 335
    Par défaut
    c'est cool!
    Mais je maintient quand même mon idée que tu devrais travailler avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Microsoft.Jet.Oledb.4.0
    Il a de nombreuses fonctionnalités en plus...

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

Discussions similaires

  1. [XL-2007] REMOVE et IMPORT module.bas
    Par Bugzy1963 dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 14/03/2013, 09h54
  2. [XL-2007] REMOVE et IMPORT module.bas
    Par Bugzy1963 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 29/09/2010, 15h50
  3. ActiveX EXE - récupérer form+module.bas
    Par pounaid dans le forum VB.NET
    Réponses: 0
    Dernier message: 20/01/2009, 11h26
  4. Procédure & Fontion module .bas
    Par totoche dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 12/01/2007, 13h38
  5. Intaller module Perl sans Connection Internet
    Par doderic dans le forum Modules
    Réponses: 2
    Dernier message: 16/02/2006, 18h53

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