IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Remplir formulaire HTML par macro VBA [XL-2002]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 11
    Points : 9
    Points
    9
    Par défaut Remplir formulaire HTML par macro VBA
    Bonjour le forum,

    Dans l'hôpital où je travaille, il existe une application web permettant d'envoyer des SMS en interne sur certains N° de postes.
    J'ai réalisé une application sous excel (2002 et 2003 en fonction des postes) permettant d'envoyer un mail aux membres du groupe PMO quand un patient est amené aux urgences avec un score de Glasgow inférieur ou égal à 6.

    Mon objectif serait d'envoyer un SMS sur le téléphone du coordonnateur d'astreinte, en plus du mail déjà envoyé.

    J'ai donc cherché sur le web comment faire, j'ai trouvé quelques explications, mais je n'arrive pas à les mettre en pratique...
    Remplir automatiquement un formulaire web en VBA

    Dans ma page web, la variable "no" correspond au N° de téléphone à entrer (de type INPUT); la variable "msg" est le champ dédié au message à envoyer (de type TEXTAREA); sendMsg correspond au bouton à cliquer pour envoyer le message.

    J'ai activé les références suivantes:
    Microsoft Internet COntrols
    Microsoft HTML object library

    Ensuite, j'ai créé un UserForm que j'ai maissé nommé par défaut "UserForm1", dans lequel j'ai ajouté le contôle WebBrowser que j'ai laissé nommé par défaut "WebBrowser1".

    puis voici le code que j'ai essayé d'adapter (sans succès...)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    Sub EnvoiSMS()
     
    Dim htmlPage As HTMLDocument
    Dim htmlElement As HTMLObjectElement
    Dim no As HTMLObjectElement
    Dim msg As HTMLObjectElement
    Dim sendMsg As HTMLObjectElement
     
    UserForm1.WebBrowser1.Navigate ("http://10.30.11.210/")
     
    Do
        DoEvents
    Loop Until Not UserForm1.WebBrowser1.Busy
     
    Set htmlPage = UserForm1.WebBrowser1.Document
     
    Set no = "4009"  'N° de poste sur lequel envoyer le SMS"
    Set msg = "test envoi sms depuis appli VBA excel"
    sendMsg.Click
     
    End Sub

    Je ne suis pas très doué en VBA, encore moins en HTML...

    Si quelqu'un parmis-vous pouvait éclairer ma lanterne, je lui serais vraiment reconnaissant...

    Vous remerciant par avance pour l'aide que vous pourrez donc m'apporter,
    Bien cordialement.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 11
    Points : 9
    Points
    9
    Par défaut [Résolu]
    Voici comment j'ai résolu mon problème, pour ceux que ça intéresse:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    Sub EnvoiSMSv2()
        Const READYSTATE_COMPLETE = 4
        Dim IE
        Dim elementHtml As Object
     
        Set IE = CreateObject("internetExplorer.Application")
        IE.Visible = True
        With IE
            .Navigate "http://10.30.11.210/"
            Do Until .ReadyState = 4                      '
                DoEvents
            Loop                                          'attend la fin du chargement
        End With
        Dim bOk As Boolean
        Set elementHtml = IE.Document.getElementById("no")
        If Not elementHtml Is Nothing Then
            bOk = True
            elementHtml.Value = "4009"
            Set elementHtml = IE.Document.getElementById("msg")
            If Not elementHtml Is Nothing Then
                bOk = True
                elementHtml.Value = "test envoi SMS par macro VBA"
     
     
    SendKeys "{TAB}"
    SendKeys "{TAB}"
    SendKeys "{ENTER}"
     
     
            Else
                bOk = False
            End If
        Else
            bOk = False
        End If
        DoEvents
        Set IE = Nothing
       If bOk Then MsgBox "connexion réussie!" Else MsgBox "connexion échouée!"
     
    End Sub
    Bien cordialement,
    Jérôme

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modifier la structure d'une table par macro / vba
    Par zermatt dans le forum Access
    Réponses: 8
    Dernier message: 21/01/2007, 15h32
  2. remplir formulaire HTML par un exe
    Par jlf dans le forum Delphi
    Réponses: 15
    Dernier message: 20/08/2006, 14h12
  3. Remplir formulaire HTML depuis une application C++
    Par danyboy85 dans le forum C++
    Réponses: 2
    Dernier message: 10/05/2006, 14h05
  4. remplir un formulaire html par delphi
    Par lassmust dans le forum Web & réseau
    Réponses: 6
    Dernier message: 24/04/2006, 20h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo