vba et mysql avec une connexion ODBC

canichon

XLDnaute Nouveau
bonjour a tous,

Voila je voudrai attaquer ma base de données avec excel en vba... mais je galere...

Il y a des tas de tuto et d'exemples sur internet mais j'ai tout essayé et rien ne va.

Le programme bugue au moment d'ouvrir la connexion avec ce message :

Erreur d'execution '-2147467259 (80004005)': Erreur Automation Erreur non spécifiée

Code:
Sub connect()
    Dim Password As String
    Dim SQLStr As String
    'Dim Cn statement
    Dim Server_Name As String
    Dim User_ID As String
    Dim Database_Name As String
    'OMIT Dim rs statement

    Set rs = CreateObject("ADODB.Recordset") 'EBGen-Daily
    Server_Name = Range("b2").Value
    Database_Name = Range("b3").Value ' Name of database
    User_ID = Range("b4").Value 'id user or username
    Password = Range("b5").Value 'Password

    SQLStr = "SELECT * FROM lvl1_items"

    Set Cn = CreateObject("ADODB.Connection") 'NEW STATEMENT
    
    Cn.Open "Server=" & _
            Server_Name & ";Database=" & Database_Name & _
            ";Uid=" & User_ID & ";Pwd=" & Password & ";"
J'ai aussi telechargé led river ODBC qui va bien mais rien n'y fait.

Si quelqu'un a une idée...

Merci
 

Staple1600

XLDnaute Barbatruc
Re : vba et mysql avec une connexion ODBC

Bonsoir à tous

canichon
Suggestion en passant:
Pourquoi ne tu Dimmes par ton rs dans ton exemple?

Ou en cochant les références adéaquates

Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset
 

canichon

XLDnaute Nouveau
Re : vba et mysql avec une connexion ODBC

bonjour,

oui... désolé Staple, C T une erreur de ma part... comme je fais des tests, je pars parfois dans tous les sens.

On va faire ENCORE plus simple

Code:
Dim oConn As ADODB.Connection
Private Sub ConnectDB()

Set oConn = New ADODB.Connection

chaine = "DRIVER={MySQL ODBC 5.3 Driver};" & _
         "SERVER=""127.0.0.1"";" & _
         "DATABASE=""envoi_plans"";" & _
         "USER=""root;"""

oConn.Open chaine

End Sub
OU

Code:
Dim oConn As ADODB.Connection
Private Sub ConnectDB()

Set oConn = New ADODB.Connection

chaine = "DRIVER={MySQL ODBC 5.3 Driver};" & _
         "SERVER=127.0.0.1;" & _
         "DATABASE=envoi_plans;" & _
         "USER=root;"

oConn.Open chaine

End Sub
et meme ça, ça marche pas... meme erreur.

J'ai re-téléchargé le connecteur ODBC sur le site d'Oracle.

Dans le menu 'outils' 'Références' de VBA, j'ai coché :

Microsoft ActiveXDataObjects (multidirectional) 2.8 Library
Microsoft ActiveXDataObjects recordset 2.8 Library
Microsoft ActiveXDataObjects 2.8 Library

Voilà
 

patoq

XLDnaute Occasionnel
Re : vba et mysql avec une connexion ODBC

Bonsoir Canichon, Staple1600, le forum

Juste une suggestion : j'attaque aussi une base de données par EXcel au travail, mais je met ActiveWorkbook.Connections("XXXXXX").ODBCConnection. (XXXX le nom de ma requete).

Et ça marche.

Je suis pas expert mais pourquoi tu passes par ADO ?

Cdt
Patrice
 

chris

XLDnaute Barbatruc
Re : vba et mysql avec une connexion ODBC

Bonjour

Juste une question bête, pourquoi charger le connecteur ODBC de MySql chez ORACLE ?
 

Haut Bas