MySql Update à partir de Excel et VBA

Anonyme
2011-01-06T15:18:34+00:00

Bonjour à tous, 

Je débute avec les requêtes SQL. Je réussis bien à récupérer des données par le biais d'ODBC et VBA mais je tente maintenant de mettre à jour des données dans une table sous MySql à partir de données inscrites dnas une feuille Excel.

À partir de mes recherches sur internet et de l'étude des requêtes réalisées avec ODBC, j'ai produit le code ci-dessous...

Sub Test()

mysql_connect = "ODBC;DATABASE=simply;DSN=Simply Accounting: MF2010;OPTION=3;PORT=13540;SERVER=localhost;UID=sysadmin"

mysql_query = ( _

"UPDATE tInvent set lId=5653, sPartCode = '092-037-0CL-L', sName = 'Hoodie cache-coeur Jardin d'enfants'FROM simply.tinvent where tinvent.1Id=10867")

End sub()

...qui ne fonctionne pas, apparemment parce que la connection à la table ne s'effectue pas correctement.

Quelqu'un d'entre vous peut-il m'aider à passer à une prochaine étape.

Merci beaucoup.

paql

Microsoft 365 et Office | Excel | Pour la maison | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

7 réponses

  1. Supprimé

    Cette réponse a été supprimée en raison d’une violation de notre Code de conduite. La réponse a été signalée manuellement ou identifiée via la détection automatisée avant que l’action ne soit entreprise. Pour obtenir plus d’informations, veuillez consulter notre Code de conduite.


    Les commentaires ont été désactivés. En savoir plus

  2. Anonyme
    2011-01-06T19:36:18+00:00

    Bonjour Misange,

    J'explore le tout en soirée et vous reveins avec les commentaires.

    Merci beaucoup et une excellente fin de journée.

    paql

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. Anonyme
    2011-01-06T16:34:34+00:00

    Bonjour

    J'ai fais ça pendant un bon moment pour mettre à jour les tables mysql d'excelabo. Le principe : écrire en VBA le fichier text contenant les instructions insert delete... et faire lire le fichier à la base, via une interface web dans mon cas.

    J'avais fait un tuto sur ce sujet, inspire-t-en

    http://www.excelabo.net/trucs/excel_php_mysql

    Le 06/01/2011 16:55, paql a écrit :

    Bonjour Isabelle,

    La commande "ActiveSheet.QueryTables(1).Refresh BackgroundQuery:=True" ne permet-elle pas de mettre à jour les données sur la feuille Excel à partir des données de la table MySql?

    Ma question manque de clarté...(désolé)

    Ce que je tente de faire est plutôt de mettre à jour la table MySql à partir de données inscrites dans la feuille Excel... plus précisément, on produit une analyse avec Excel puis on saisit à la main les résultats dans le logiciel de comptabilité Simple Comptable (qui opère sous MySql)... je gagnerais un temps énorme si je pouvais compléter mon programme pour que les résultats de mon application soient inscrits directement dans les tables de Simple Comptable.

    Merci de ton aide et une excellente journée.

    paql


    Misange - www.excelabo.net Si vous voulez consulter et participer à ce forum en utilisant un lecteur de news comme windows live mail, thunderbird suivez ce tuto : http://www.excelabo.net/web/nntp-bridge

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  4. Anonyme
    2011-01-06T15:55:41+00:00

    Bonjour Isabelle,

    La commande "ActiveSheet.QueryTables(1).Refresh BackgroundQuery:=True" ne permet-elle pas de mettre à jour les données sur la feuille Excel à partir des données de la table MySql?

    Ma question manque de clarté...(désolé)

    Ce que je tente de faire est plutôt de mettre à jour la table MySql à partir de données inscrites dans la feuille Excel... plus précisément, on produit une analyse avec Excel puis on saisit à la main les résultats dans le logiciel de comptabilité Simple Comptable (qui opère sous MySql)... je gagnerais un temps énorme si je pouvais compléter mon programme pour que les résultats de mon application soient inscrits directement dans les tables de Simple Comptable.

    Merci de ton aide et une excellente journée.

    paql

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  5. Anonyme
    2011-01-06T15:29:32+00:00

    bonjour paql,

    pour mettre à jour les données de la requête,

    ActiveSheet.QueryTables(1).Refresh BackgroundQuery:=True

    isabelle

    Le 2011-01-06 10:18, paql a écrit :

    Bonjour à tous,

    Je débute avec les requêtes SQL. Je réussis bien à récupérer des données par le biais d'ODBC et VBA mais je tente maintenant de mettre à jour des données dans une table sous MySql à partir de données inscrites dnas une feuille Excel.

    À partir de mes recherches sur internet et de l'étude des requêtes réalisées avec ODBC, j'ai produit le code ci-dessous...

    Sub Test()

    mysql_connect = "ODBC;DATABASE=simply;DSN=Simply Accounting: MF2010;OPTION=3;PORT=13540;SERVER=localhost;UID=sysadmin"

    mysql_query = ( _

    "UPDATE tInvent set lId=5653, sPartCode = '092-037-0CL-L', sName = 'Hoodie cache-coeur Jardin d'enfants'FROM simply.tinvent where tinvent.1Id=10867")

    End sub()

    ...qui ne fonctionne pas, apparemment parce que la connection à la table ne s'effectue pas correctement.

    Quelqu'un d'entre vous peut-il m'aider à passer à une prochaine étape.

    Merci beaucoup.

    paql

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire