VBA / Excel

Résolu/Fermé
kofi_kari_kari - 22 juin 2011 à 06:02
 kofi_kari_kari - 23 juin 2011 à 00:22
Bonjour à tous,

Je débute en SQL et j'aimerais savoir comment utiliser MySQL avec VBA. Je voudrais simplement pouvoir insérer des données dans une table et/ou lire des données. J'ai trouvé pas mal d'info sur des forums:
http://www.heritage-tech.net/908/inserting-data-into-mysql-from-excel-using-vba/
http://rp.developpez.com/vb/tutoriels/mysql/

Le problème est que je n'arrive pas à faire marcher la connexion. Quand je lance cette ligne de code:

Dim oConn As ADODB.Connection


Private Sub ConnectDB()

Set oConn = New ADODB.Connection

oConn.Open "DRIVER={MySQL ODBC 5.5.8 Driver} " & _
"SERVER=localhost " & _
"DATABASE=test " & _
"USER=1 " & _
"PASSWORD="" " & _
"Option=3;"

End Sub

Je reçois le message d'erreur suivant: Erreur d'exécution -2147217805 (8004e73), Erreur Automation.

J'ai vérifié les éléments suivants:
- j'ai bien mis la référence à Microsoft ActiveX
- j'ai bien mis le code dans la worksheet concernée

Je pense que le problème vient peut-être des éléments que je mets. Je n'ai pas de mot de passe (en tout cas je ne crois pas mais je ne sais pas comment vérifier ce point) et je crois que mon username et le serveur sont bons.

Lors de l'installation de MySQL, j'ai tout mis par défaut, sans mettre de mot de passe ni quoique ce soit d'un peu exotique.

Enfin, je travaille sur WampServer (donc sans connexion à Internet) si cette info peut aider.

Je ne comprends donc vraiment pas et espère que vous pourrez m'aider.

Bien cordialement,




A voir également:

3 réponses

joomliner Messages postés 89 Date d'inscription jeudi 9 juin 2011 Statut Membre Dernière intervention 1 août 2016 36
22 juin 2011 à 06:47
1. Est-ce que les pilotes ODBC de MySQL sont installés ? Avez-vous créé un lien ODBC dans les outils d'administrations ?

2. La chaine de connexion me semble un peu erronée , séparez vos paramètres par un ';'

Une petite variante à tester :

oConn.ConnectionString = "DRIVER={MySQL ODBC 5.5.8 Driver}; " & "SERVER=localhost; " & "DATABASE=test; " & "USER=1; " & "PASSWORD=''; " & _
"Option=3;"

oConn.Open();


Avez-vous vraiment la version 5.5.8 des pilotes ODBC ? Sur le site de MySQL ils parlent de 5.1.8. Vous devriez vérifier!!

Source: https://dev.mysql.com/downloads/connector/odbc/

Je n'ai pas d'environnement enviable pour tester, mais je crois que cela ira déjà mieux.

Bon succès!
-JoomLiner
0
kofi_kari_kari
22 juin 2011 à 08:24
Bonjour Loomliner et merci pour la réponse.

Je comprends pas la question:
"Avez-vous créé un lien ODBC dans les outils d'administrations ? "

J'ai bien installé les pilotes mais je n'ai pas créé de lien. Pouvez vous m'indiquer comment faire? Je pensais qu'en installant les pilotes, le tour était joué... Manifestement non.

Merci beaucoup d'avoir pris le temps de me répondre.

Bien cordialement
0
joomliner Messages postés 89 Date d'inscription jeudi 9 juin 2011 Statut Membre Dernière intervention 1 août 2016 36
22 juin 2011 à 20:48
Oui, pas de problème
Mais je ne crois pas que vous aurez besoin de créer une source de données.

Si vous êtes curieux, vous pouvez toujours aller voir :
Dans Windows XP
Panneaux de configuration > Outils d'Administration > Sources de données (ODBC)


Avez-vous corrigez la string de connexion, est-ce que le résultat est mieux ?
0
kofi_kari_kari
23 juin 2011 à 00:22
C'est parfait! Ca marche très bien. Les problèmes venaient de la string de connexion et du fait que je n'avais pas crée le lien ODBC dans les outils d'administration.

Encore merci!

Cordialement
0