nourir une base SQL via un lien HTTP sans ouvrir l'explorateur dans Excel

flyjodel

XLDnaute Junior
Bonjour... Je sais que mon titre est énigmatique, c'est juste pour attirer le chaland.

En fait, j'ai une interface qui me permet d'entrer des données dans une base mySQL située sur un serveur linux.
L'insertion des données se fait via une requête telle que celle-ci :

http://serveurmysql.monsite.org/?id=123456&age=33&nom=christ&prenom=jesus

j'ai une liste de données dans un fichier texte à insérer et je souhaite le faire via Excel et son interface pratique, j'ai de bonnes notions de VBA.
Cependant, je n'ai aucune idée de la manière de faire cela. Idéalement j'aimerais ne pas avoir à ouvrir une session chrome ou firefox pour chaque insertion de donnée.
Y a-t-il une méthode pour faire cela ?

Merci de votre aide !!
 

flyjodel

XLDnaute Junior
Re : nourir une base SQL via un lien HTTP sans ouvrir l'explorateur dans Excel

j'ai trouvé une méthode qui serait celle-ci :
Code:
u = Cells(1, 1)
With ActiveSheet.QueryTables.Add(Connection:="URL;" & u, Destination:=Range("B2"))
        .WebFormatting = xlWebFormattingNone
        .Refresh BackgroundQuery:=True
    End With

mais je ne comprends pas à quoi sert l'argument Destination, sachant que je n'attends rien en retour. est-il possible de s'en passer ou d'utiliser autre chose que la méthode Add pour insérer les données dans ma base de données ?

Plus j'y pense, plus l'astuce que j'ai employée me semble pas du tout adaptée. Elle sert à récupérer des données grâce à une requête web et à remplir une base ainsi, donc effectivement ça fonctionne mais ... c'est pas propre. Une idée pour faire ça mieux ? juste envoyer la requête http et voila, sans attendre de résultat ni alimenter de données ?

Merci
 
Dernière édition:

flyjodel

XLDnaute Junior
Re : nourir une base SQL via un lien HTTP sans ouvrir l'explorateur dans Excel

merci de ta réponse, mais je ne cherche pas à interagir directement avec la BDD MySQL. J'ai déjà un prog en java qui s'en occupe.
Disons qu'on oublie mon histoire de mySQL.

j'ai une page à laquelle je veux accéder pour injecter des données. Cette page se charge d'interpréter le HTTP POST qu'elle reçoit et de faire ce qu'il faut dans le BDD.

Je veux juste à partir d'excel effectuer une requête HTTP. C'est tout. Sans attendre de résultat en retour. Juste envoyer des données vers internet.

Quand je le fais avec un navigateur, je rentre juste l'adresse par exemple et cela suffit pour nourir la base de données, c'est déjà pris en charge. Je cherche juste à envoyer cette adresse sur le web. mais la méthode QueryTables.Add() me renvoie forcément un résultat dont je n'ai que faire...
 

flyjodel

XLDnaute Junior
Re : nourir une base SQL via un lien HTTP sans ouvrir l'explorateur dans Excel

Bah c'est encore plus simple, avec un truc genre :
Code:
Sub ouvreURL()
Dim URL As String, Nom As String, Prenom As String

    Nom = "christ"
    Prenom = "jesus "

    URL = "http://monsite.org/?nom=" & Nom & "&prenom=" & Prenom
   
    ThisWorkbook.FollowHyperlink URL
End Sub


encore merci pour ton code, mais ce code ouvre le navigateur qui cherche à accéder au lien.
Je veux juste que les données soient envoyées par internet, mais pas que la page soit ouverte dans un navigateur. L'idée est d'envoyer des données via une requête http GET
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 182
dernier inscrit
moutassim.amine