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

  1. #1
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : août 2005
    Messages : 3 317
    Points : 14 200
    Points
    14 200
    Par défaut [VBA/VB] créer une page dynamiquement dans un WebBrowser
    Comment créer une page dynamiquement dans un contrôle WebBrowser afin qu'il contienne:
    *Un texte
    *Une image de fond
    *Une fonction JavaScript
    *Un bouton qui permet de déclencher la fonction JavaScript

    (testé en VB et VBA)



    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    'Placez un contrôle WebBrowser et un contrôle CommandButton
    'dans L'UserForm.
    'Nécessite les bibliothèques:
    '   *Microsoft Internet Controls
    '   *Microsoft HTML Object Library
     
    Private Sub Form_Load()
    '-------
    'Cette procédure permet de créer une page dynamiquement
    'dans un WebBrowser:
    '   *Un texte
    '   *Une image de fond
    '   *Une fonction JavaScript
    '   *Un bouton qui permet de déclencher la fonction
    '
    '-------
     
        Dim AjoutFonction As String
        Dim Fichier As String
     
        'Définit l'image de fond
        Fichier = "http://vb.developpez.com/cours/images/cours_vb.gif"
     
        'Création d'une page vierge qui va servir de support
        WebBrowser1.Navigate "about:<html><body></body></html>"
     
     
        '--- texte ---
        AjoutFonction = "<html><body><B>Bienvenue sur cette page.</B>" & vbCrLf
     
        '--- image de fond ---
        AjoutFonction = AjoutFonction & "<BODY background='" & Fichier & "'</BODY>"
        '---------------------
     
        '--- bouton ---
        AjoutFonction = AjoutFonction & "<FORM>" & _
        "<INPUT type=button name='Bouton1' value='Cliquez ici.' " & _
            "onClick=(alert('Bonjour!'))></FORM>"
        '--------------
     
        '--- fonction javascript ---
        AjoutFonction = _
            AjoutFonction & "<script language=""javascript"">" & vbCrLf
        AjoutFonction = AjoutFonction & "function maFonction(){" & vbCrLf
        AjoutFonction = AjoutFonction & "alert(""Coucou"");" & vbCrLf
        AjoutFonction = AjoutFonction & "}" & vbCrLf
        AjoutFonction = AjoutFonction & "</script></body></html>"
        '---------------------------
     
        'Insertion de la fonction JavaScript dans le WebBrowser
        WebBrowser1.Document.writeln AjoutFonction
    End Sub


    Comment utiliser un CommandButton VB/VBA pour déclencher la fonction JavaScript contenue dans le WebBrowser?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub Command1_Click()
    '
    'Cette procédure montre comment déclencher, par macro VB/VBA, la fonction
    'JavaScript contenue dans la page précédemment créée.
    '
     
        Dim s As String
        Dim maPageHtml As HTMLDocument
     
        Set maPageHtml = WebBrowser1.Document
        'Déclenchement de la fonction JavaScript par macro
        maPageHtml.parentWindow.execScript "maFonction();", "javascript"
     
    End Sub


    bonne journée
    michel

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    mars 2002
    Messages
    38 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2002
    Messages : 38 816
    Points : 64 720
    Points
    64 720
    Billets dans le blog
    1
    Par défaut
    Une autre façon d'aborder la création de page html en VBA ...
    j'ai une sub qui génère un fichier html puis un shell qui l'ouvre

    http://www.developpez.net/forums/sho...d.php?t=215530
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

  3. #3
    Membre expert
    Avatar de alassanediakite
    Homme Profil pro
    developpeur
    Inscrit en
    août 2006
    Messages
    1 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Mali

    Informations professionnelles :
    Activité : developpeur

    Informations forums :
    Inscription : août 2006
    Messages : 1 579
    Points : 3 421
    Points
    3 421
    Billets dans le blog
    8
    Par défaut
    Salut
    J'ai mainte fois voulu ituliser "webbrowser" à chaque fois "ce compsant n'est pas inscrit, pour l'inscrire : reinstallez-le".
    Que faut-il alors faire?
    Le monde est trop bien programmé pour être l’œuvre du hasard…
    Mon produit pour la gestion d'école: www.logicoles.com

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Superviseur de Hotline
    Inscrit en
    mars 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Superviseur de Hotline
    Secteur : Communication - Médias

    Informations forums :
    Inscription : mars 2013
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    je pense qu'il est inutile que j'ouvre un nouveau topic pour ma question.

    moi je veux faire à peu près l'inverse !

    j'ai un user form codé en vba achevé qui fonctionne très bien (calcul sur excel+envoi de mail via outlook+des courbes)

    mon collègue souhaite l'insérer sur une page web sur notre intranet

    en résumé : comment déclencher l’exécution d'un code vba à partir d'un lien ou commandbutton d'une page web ? sachant que le site et le code vba sont hébergés sur le même pc.

    Merci d'avance

Discussions similaires

  1. [C# 2.0] Afficher une partie d'une page web dans un WebBrowser
    Par sorcer1 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 22/07/2011, 10h51
  2. Créer une simple progressbar dans un WebBrowser
    Par aus3004 dans le forum VB.NET
    Réponses: 9
    Dernier message: 02/05/2010, 19h48
  3. Réponses: 8
    Dernier message: 26/03/2010, 08h16
  4. Afficher une page html dans un WebBrowser
    Par Yepes dans le forum VB.NET
    Réponses: 10
    Dernier message: 26/03/2008, 14h49
  5. [RaveReport] Comment créer une page dynamiquement
    Par bullrot dans le forum C++Builder
    Réponses: 1
    Dernier message: 18/12/2007, 16h33

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