Erreur au connexion d'une bd acces à un VB 6

Résolu/Fermé
Utilisateur anonyme - 19 août 2009 à 10:55
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 19 août 2009 à 13:10
Bonjour,
j'ai essyée de connecter une bd access2007 à VB 6.0 j'ai suivi les étapes suivant:
j'ai créer un dataenvirenement -->j'ai déclaré ce code :
----------------------------------------------------------------------------
Private Sub Connection1_InfoMessage(ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection)

'Déclaration de la variable de connexion
Dim cnx As new ADODB.Connection
'Définition du pilote de connexion
cnx.Provider = "Microsoft.ace.Oledb.12.0"
'Définition de la chaîne de connexion
cnx.ConnectionString = "C:\Documents and Settings\h\Bureau\bd finale.mdb" 'Ouverture de la base de données
cnx.Open

End Sub
---------------------------------------------------------------------------
mais quand j'exécute le code ce message s'affiche :
erreur de compilation:
incorrect à l'extérieur d'une procédure .

--( malgré que j'ai installé le pilote d'office systeme 2007:"Acedatabaseengine.exe")
aider moi mes amis je suis débutant
cordialement

3 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
19 août 2009 à 12:24
Bonjour,

Es-tu sûr de ça :

'Déclaration de la variable de connexion
Dim cnx As new ADODB.Connection

Je ferai plutôt ça:

Dim cnx As ADODB.Connection

Set cnx = New ADODB.Connection

...

;o)
0
Utilisateur anonyme
19 août 2009 à 12:48
rebonjour Nicolas,
si je met :

Dim cnx As ADODB.Connection
Set cnx = New ADODB.Connection


au lieu de :

Dim cnx As new ADODB.Connection le message d'erreur (erreur de compilation:
incorrect à l'extérieur d'une procédure
) que j'ai déjâ indiqué s'affiche ( le mot set est selectionné en bleu ).
et voilâ la réference de code pour la déclaration de variable de connexion -->https://drq.developpez.com/vb/tutoriels/ADO/Chapitre2/

-----------------------------------------------------

le met de :Dim cnx As new ADODB.Connection evite l'affichage de message d'erreur pour set
mais le probléme reste pour cnx.Provider = "Microsoft.ace.Oledb.12.0"
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
19 août 2009 à 13:10
le met de :Dim cnx As new ADODB.Connection evite l'affichage de message d'erreur pour set

Je ne sais pas d'où tu tiens ça !!!

Voilà ce que je lis:
"Comment réaliser une connexion ? Tout d'abord il faut déclarer la variable associée à la connexion.

Dim cnx As New ADODB.Connection 


ou alors

Dim cnx As ADODB.Connection
Set cnx = New ADODB.Connection 
"

Voilà ce que j'utilise et qui fonctionne chez moi.
Option Explicit

Private AdoCnx As ADODB.Connection
Private rs As Recordset
Private CmdSql As ADODB.Command
Private Const BDD = "\bd\bdd.mdb"   'Chemin et Nom de la base de donnée



'Connexion à la base
Public Function ConnectBdd()
Dim CnxString As String
Dim chemin As String

chemin = App.Path & BDD

Set AdoCnx = New ADODB.Connection

If AdoCnx.State = adStateOpen Then
    MsgBox "La connection est déjà ouverte"
    Exit Function
End If

        '======== Ouverture Access ============'
        
CnxString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                   "Data Source=" & chemin & ";" & _
                   "Persist Security Info=False"

AdoCnx.Open CnxString
AdoCnx.CursorLocation = adUseClient

On Error Resume Next
'    AdoCnx.Open
    If Err <> 0 Or AdoCnx.State = adStateClosed Then
        MsgBox "Connection impossible avec la base"
        Exit Function
    End If

End Function


;o)
0