Lien vers un site internet

Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010 - 12 juil. 2007 à 09:45
cs_jp0304 Messages postés 2 Date d'inscription vendredi 23 juin 2006 Statut Membre Dernière intervention 16 janvier 2009 - 14 janv. 2009 à 18:10
Bonjour,

Je cherche a faire un lien vers un site internet...
Alors j'ai regardé un peu mais les avis sont partagés sur les codes que j'ai trouvé. Alors ce que j'ai fait ca marche mais si j'ai déjà une page internet lancer, ça me lance le site dans cette fenetre et ça m'en n'ouvre pas une autre.
De plus je ne sais pas si ce code marche pour tous les navigateur internet ou juste pour internet explorer.
J'ai appliqué un code que j'ai trouvé mais j'avoue que je ne sais pas trop comment ça marche...
Voilà le code que j'ai fait...

Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Sub CommandButton9_Click()
Dim cod
On Error Resume Next
WebPage = "www.trs.casimir.org"
cod = ShellExecute(actualfrmHWND, vbNullString, WebPage, "", vbNullString, 1)
End sub

La function ShellExecute trouve le programme que l'on veux n'importe où qu'il soit et n'importe quoi que ce soit comme programme?
Et actualfrmHWND ça correspond à quoi?
Si vous pouvez m'eclaircir un peu...
Je vous remercie par avance...

10 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
12 juil. 2007 à 09:48
ShellExecute utilisera la navigateur par defaut, c'est donc LA solution à adopter
le handle, tu t'en fiches un peu...

dans l'absolu, il faudrait plutot :

Private Sub CommandButton9_Click()
ShellExecute(0, "open", "www.trs.casimir.org"
, vbNullString, vbNullString, 1)
End sub
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
12 juil. 2007 à 09:50
salut,

actualfrmHWND doit-être Me.hWnd
En gros tu donnes le handle de ta Form en paramètre.
ShellExecute te lancera le fichier avec l'appplication associée à l'extension.

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
0
Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010
12 juil. 2007 à 10:01
Merci.
J'ai fait comme tu dit Renfield mais est ce que ca serait possible que ça ouvre le site dans une nouvelle fenetre?
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
12 juil. 2007 à 10:32
dans une nouvelle fenêtre, là, tu pars vers des dépendances propres aux navigateurs...(me semble)
0

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

Posez votre question
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
12 juil. 2007 à 16:25
Hello,

Il me semble avoir vu sur ce site qu'il fallait mettre 0& au niveau du handle pour ouvrir dans une nouvelle fenêtre...
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
12 juil. 2007 à 16:28
Je viens de tester et effectivement, cela lance un nouvel onglet du omins pour internet explorer..Je n'ai pas d'autre navigateur au boulot pour pouvoir tester..
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
12 juil. 2007 à 16:56
Ha pardon je me suis planté ça a le même comportement avec le 0& je n'avais pas encore utilisé le shellexecute avec un site internet..Par contre en cherchant un peu j'ai trouvé ce lien :

http://www.vbfrance.com/article.aspx?Val=4634
0
Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010
12 juil. 2007 à 16:58
C'est à dire qu'il faudrai que je mette: ShellExecute(0&, "open", "www.trs.casimir.org", vbNullString, vbNullString, 1)?
Parce que ça ça ne marche pas.

Sinon une question....
Moi je me sert de la fonction ShellExecute pour lancer des pdf et aussi pour lancer un site internet (dans le meme programme)...
Pourquoi avec le pdf je peux mettre dans mon code directement "shellexecute....." et avec le site internet il faut que je mette "cod = shellexecute" c'est à dire qu'il faut un "="?
J'ai peut etre fait une erreur qq part...

Merci!
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
12 juil. 2007 à 18:39
salut,
pas obligé, soit tu executes en appelant, soit en plus tu récupères le résultat

call msgbox("machin")
msgbox "machin"
ret=msgbox("machin")

sauf exceptions rares, les api sont juste des fonctions
++

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
cs_jp0304 Messages postés 2 Date d'inscription vendredi 23 juin 2006 Statut Membre Dernière intervention 16 janvier 2009
14 janv. 2009 à 18:10
simplement merci pour toutes vos explications qui m'ont permis de terminer mon prog !
JP
0
Rejoignez-nous