Je voudrais écrire une macro dans Excel qui va écrire dans une base de données mysql. Quelqu'un peut-il me faire commencer s'il vous plaît?Excel VBA: écrire dans la base de données mysql
2
A
Répondre
7
Vous pouvez vous connecter à MySQL avec une chaîne de connexion et ADO:
''http://support.microsoft.com/kb/246335
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
strCon = "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=MyDB;" _
& "User=root;Password=pw;Option=3;"
cn.Open strCon
Vous pouvez également utiliser DSN avec une connexion à Excel à l'aide du pilote de Jet:
Dim cn As ADODB.Connection
''Not the best way to get the name, just convenient for notes
strFile = Workbooks(1).FullName
strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strFile _
& ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";"
Set cn = CreateObject("ADODB.Connection")
''For this to work, you must create a DSN and use the name in place of
''DSNName
strSQL = "INSERT INTO [ODBC;DSN=DSNName;].NameOfMySQLTable " _
& "Select AnyField As NameOfMySQLField FROM [Sheet1$];"
cn.Execute strSQL
2
L'écriture dans une base de données mysql n'est pas différente de l'écriture dans une autre base de données.
Vous devez créer un objet ADODB.Connection, .Ouvrez-le avec un appropriate connection string et utilisez la méthode .Execute (ou ADODB.Command) pour exécuter sql. Pour plus d'informations, voir http://msdn.microsoft.com/en-us/library/ms807027.aspx pour plus d'informations.
Vous devez avoir installé un pilote d'accès mysql (ODBC ou OLEDB) et référencer Microsoft ActiveX Data Objects 2.8 à partir de votre projet vba.
Questions connexes
- 1. Excel VBA: interroger une base de données MySQL
- 2. Accéder à la base de données SQL dans Excel VBA
- 3. Importer des données Excel dans la base de données mysql
- 4. Excel VBA, comment faire plusieurs entrées de base de données
- 5. Excel/VBA Problème de base Fonction
- 6. données Format mysql dans Excel
- 7. Excel VBA recalculer la sélection
- 8. Itérer sur les résultats de requête de base de données dans vba dans Excel
- 9. Base de données Wordpress dans la base de données MySQL?
- 10. Programmation VBA dans Excel
- 11. vba dans excel 2003
- 12. erreur VBA dans Excel
- 13. VBA dans Excel: fichier de constantes globales
- 14. Excel vba: restreindre la zone d'édition dans la feuille Excel
- 15. Comment utiliser Excel VBA pour extraire le champ Mémo de la base de données Access?
- 16. Rechercher dans la base de données MySQL
- 17. Insérez dans la base de données MySQL
- 18. Liste déroulante Excel VBA
- 19. Acquisition de données Excel
- 20. VBA Excel Range méthode
- 21. Web scraping dans VBA et Excel
- 22. Itérer dans les colonnes de VBA (Excel)
- 23. Erreur 70 dans Excel VBA
- 24. Exécution de SQL SP dans Excel VBA
- 25. Obtention du dernier ID d'insertion dans Excel Connexion ADODB à la base de données MySQL
- 26. Importer fichier Excel via php dans la base de données MySQL
- 27. Accéder à la base de données MySQL dans Excel 2010 powerpivot
- 28. Téléchargement et formatage de données Web avec Excel VBA
- 29. Variables dans des tableaux Excel en VBA
- 30. Excel VBA Macro
grâce remou, u peut montrer moi comment j'exécuterais la déclaration SQL? –
J'ai ajouté quelques notes, mais MySQL n'est pas installé sur ce PC à ce moment-là, donc je travaille à partir de mes notes. Les suggestions ci-dessus ne sont en aucun cas les seuls moyens de s'y prendre. – Fionnuala
@Remou: Hey, je reçois l'erreur: 'Erreur de compilation: Types définis par l'utilisateur non définis' sur la ligne 'Dim cn As ADODB.Connection' Qu'est-ce qui pourrait être faux? –