URL affichage WORD VBA

Résolu/Fermé
jacques13
Messages postés
14
Date d'inscription
vendredi 8 décembre 2006
Statut
Membre
Dernière intervention
17 décembre 2006
- 9 déc. 2006 à 00:21
 Utilisateur anonyme - 12 déc. 2006 à 01:13
Bonjour, je cherche comment à partir d'un document WORD, afficher une page WEB dont je connais l'adresse http://.....
Je veux écrire une macro qui lorsque je cliquerai sur un bouton, que je mettrai dans le document, la macro affiche la page WEB.
Je ne sais pas quoi écrire dans la routine Sub, End Sub !
Merci

7 réponses

Utilisateur anonyme
9 déc. 2006 à 04:32
re:

petite correction :

Private Sub CommandButton1_Click()

    Static objIE As Object
    
    If (CommandButton1.Caption = "Ouvrir") Then
        Set objIE = CreateObject("InternetExplorer.Application")
        objIE.Navigate "https://www.oricom.ca/"
        objIE.Visible = True
        CommandButton1.Caption = "Fermer"
    Else
        CommandButton1.Caption = "Ouvrir"
        objIE.Quit
        Set objIE = Nothing
    End If

End Sub


Lupin
5
Utilisateur anonyme
9 déc. 2006 à 00:49
re:

ce que j'en comprend ressemblerait à ceci :

Private Sub CommandButton1_Click()

    Dim objIE As Object
    
    Set objIE = CreateObject("InternetExplorer.Application")
'
    objIE.Navigate "https://www.oricom.ca/"
    objIE.Visible = True

End Sub


Lupin
1
jacques13
Messages postés
14
Date d'inscription
vendredi 8 décembre 2006
Statut
Membre
Dernière intervention
17 décembre 2006

9 déc. 2006 à 02:33
MERCI
Je n'avais pas vu la première réponse : c'est tout à fait ça, j'ai testé et ça marche : FORMIDABLE.
Par contre, si, par exemple, je clique plusieurs fois sur le bouton, il s'ouvre une nouvelle page WEB à chaque fois, mais c'est déjà très bien comme ça !
Mais ne pourrait-on pas fermer la page WEB qui vient d'être affichée lorsque l'on clique une deuxième fois, où sur un autre bouton qui doit afficher une autre page WEB ? (cela permettrait de ne pas avoir plein de pages WEB qui sont ouvertes, si, par exemple, l'utilisateur clique sur 10 boutons différents (ma page word pourra contenir plusieurs dizaines de boutons).
0
Utilisateur anonyme
12 déc. 2006 à 01:13
Bonjour,

Pour le point 1, je n'ai pas trouvé de solution, je suis très peu
à l'aise sous VBA-Word par rapport à VBA-Excel.

Pour le point 2, s'il s'agit d'un mot de passe sous internet,
je ne vois pas non plus, par contre s'il s'agit d'un mot de
passe pour ouvrir un document word, l'information peut
être stocké dans le fichier normal.dot en VBA.

Désolé de ne pouvoir aller plus loin, je vous recommande
de poser votre question dans le forum de microsoft sous
la rubrique "Microsoft Word".

Lupin
1
Utilisateur anonyme
9 déc. 2006 à 00:41
Bonjour,

je ne comprends pas votre question, puisque un lien cité
dans un document word vous amène directement sur la page.

Enfoncé la touche [ Ctrl ] (contrôle) et un clic sur le lien !

Lupin
0
jacques13
Messages postés
14
Date d'inscription
vendredi 8 décembre 2006
Statut
Membre
Dernière intervention
17 décembre 2006

9 déc. 2006 à 02:15
Bonjour,
Merci d'avoir répondu.
En fait, je connais le VBA que je pratique sur Excel. Ce que je veux faire, c'est, sur un document word, créer plusieurs boutons (avec la boîte à outil contrôles). A chacun d'eux, je veux, lorsque l'utilisateur clique, que s'affiche une page WEB différente.
Et là, je ne connais pas les instructions à mettre dans la routines en VBA.
Je connais le lien CTRL + clic, mais je préférerais utiliser des boutons de commandes qui est plus pratique à mon goôut puisque cela ne demande qu'un clic.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jacques13
Messages postés
14
Date d'inscription
vendredi 8 décembre 2006
Statut
Membre
Dernière intervention
17 décembre 2006

9 déc. 2006 à 04:23
[VBA WORD] Afficher une page WEB dans un cadre défini dans un document word : Comment afficher une page WEB dans un cadre (tableau, zone image ou autre) d'un document WORD en VBA.
J'ai testé la routine de "Lupin" qui est ci-dessus, ça fonctionne, mais les pages WEB s'ouvrent un peu n'importe où sur l'écran. Ce que je voudrais, si cela est possible, c'est que lorsque je clique, la page WEB vienne se "coller" dans un cadre, un tableau, une zone image... que j'aurais défini dans ma page WORD.
It is possible ???
Merci beaucoup.
0
Utilisateur anonyme
9 déc. 2006 à 04:26
re:

suggestion :

pour un bouton donnée, utiliser la technique du flip/flop.

ex.:

Private Sub CommandButton1_Click()

    Static objIE As Object
    
    If (CommandButton1.Caption = "Ouvrir") Then
        Set objIE = CreateObject("InternetExplorer.Application")
        objIE.Navigate "https://www.oricom.ca/"
        objIE.Visible = True
        CommandButton1.Caption = "Fermer"
    Else
        CommandButton1.Caption = "Ouvrir"
        objIE.Quit
    End If

End Sub


Lupin
0
Utilisateur anonyme
9 déc. 2006 à 04:37
...

et c'est l'heure du dodo pour moi, il est près de minuit,
l'heure du crime :-)

@+
Lupin
0
Merci beaucoup. Cela m'a bien aidé. Si vous avez encore un peu de temps, je vous explique voila ce que j'ai fait :
J'ai créé plusieurs documents WORD, doc1, doc2, doc2,...
Dans chacun d'eux, j'ai intégré plusieurs Command Button, button1, button2, button3,...
Chacun de ces buttons, lorsque l'on clique dessus, affiche une page WEB scpécifique.
Lorsque je suis dans le même document, les pages WEB s'affichent dans la même fenêtre : PARFAIT.
Voici le code du premier document :

------------------ DEBUT DU CODE
Dim objIE As Object

Private Sub Document_Open()
Set objIE = CreateObject("InternetExplorer.Application")
End Sub

Sub Image1_Click()
objIE.Navigate "https://www.caisse-epargne.fr/particuliers?reg=15455"
objIE.Visible = True
End Sub

Private Sub Image11_Click()
objIE.Navigate "https://fr.yahoo.com/"
objIE.Visible = True
End Sub

Private Sub CommandButton1_Click()
objIE.Quit
Set objIE = Nothing
ChangeFileOpenDirectory "D:\"
Documents.Open FileName:="""Test affichage WEB-SOP.doc""", _
ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
wdOpenFormatAuto, XMLTransform:=""
End Sub
-------------- FIN DU CODE

J'ai ajouté, sur chaque document, un bouton qui me permet de charger le document suivant, si je le souhaite. Tout marche bien. le code des autres documents WORD est identique à celui-ci, excepté que le nom du fichier chargé change (Test Affichage WEB...).

1) - Ce que je souhaiterais faire maintenant, si cela est possible, c'est que les pages WEB s'affichent dans un cadre que je définirais et qui serait dans le document WORD (comme dans une fenêtre qui serait intégrée dans le document). Est-ce possible ?

2) - Je crée plusieurs documents WORD et non un seul : pourquoi ? Parce que ces documents WORD seront annotés de commentaires par des utilisateurs différents (situés géographiquement à différents endroits) et que le but de l'applicatif, est de pouvoir afficher ces différents documents et les pages WEB correspondantes. En fait, il s'agira plutôt d'afficher des graphiques produits par un outil WEB de mon entreprise. Le problème, c'est que nous "tuons" Internet chaque fois que nous sortons d'un document, si j'ai bien compris les instructions :

objIE.Quit
Set objIE = Nothing

Ce qui obligera à ressaisir son user et son password à chaque changement de document WORD. Je ne sais si je suis clair !!!

Y a t-il une possibilité, en exploitant différents documents WORD pour n'avoir à saisir sun UserID et son PassWord qu'une seule fois .?

EN TOUT CAS, merci beaucoup pour votre aide (je me suis couché à 8h00 ce matin - nuit blanche - pour tester le code que vous m'avez indiqué, mais quand on aime....

A bientôt.
0