Executer javascript de vba [Résolu]

Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 10:48 - Dernière réponse : Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention
- 26 juin 2008 à 16:37
Bonjour a tous

je voudrai automatiser la collecte de données via internet et pour cela je pilote explorer de VBA. Cependant je tombe sur une page ou il y a un bouton mais qui est lié à un javascript je crois:

<TD vAlign="bottom" align="right" rowSpan="5">
                 ----

              sitepipo
"
Wend



IE.navigate "
Site3
"
'IE.parentWindow.execScript "Href_ctl0_tabVol_ucHisto1_CdcPanel1_but_go();"



End Sub

Merci de m'accorder votre temps !!
Afficher la suite 

14 réponses

Répondre au sujet
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 26 juin 2008 à 15:58
+3
Utile
si le lien n'a pas de nom ni d'ID ...
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 26 juin 2008 à 11:31
Commenter la réponse de Renfield
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 11:45
0
Utile
Salut Renfield

le problème que jai c'est que je narrive pas a trouver le nom (même en regardant le code source) du boutton à cliquer. comme tu le vois dans l'extrait de code source que jai posté au début, le boutton n'a pas de code... Quand j'ai fait

IE.document.all("ctl00$column3$ctl00$buttonLogin").Click

dans le code VBA que jai posté, le nom je l'avait eu sur le code source de la age web.. là je ne le trouve pas
Commenter la réponse de Preetamus
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 11:52
0
Utile
"ce bouton n'a pas de code"---> remplacer  par: "ce bouton n'a pas de nom"

désolé pour le bug

aussi un "p" avant "age"
Commenter la réponse de Preetamus
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 26 juin 2008 à 11:55
0
Utile
tu peux passer par la collection Links
Commenter la réponse de Renfield
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 13:32
0
Utile
abon? comment faire?
 jsui désolé mais je ne vois pas tro ce que tu veux dire
Commenter la réponse de Preetamus
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 26 juin 2008 à 13:49
0
Utile
WebBrowser1.Document.Links(0).Click

quand tu cherches, ouvre l'oeil et fouine dans l'explorateur d'objets (F2) :

Property links As IHTMLElementCollection
Lecture seule
Membre de MSHTML.HTMLDocument

Sub click()
Membre de MSHTML.HTMLLinkElement
Commenter la réponse de Renfield
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 14:51
0
Utile
je n'ai pas tout compris parceke certaines lignes de ton code génère des erreurs
notamment

Property links As IHTMLElementCollection

jai rajouté

Dim Links As IHTMLElementCollection
Set html1 = IE.document
Set Links = html1.all

à mon code pour avoir tous les links qui sont sur la page web. de plus je c que je pe utiliser .tags().item() pour acceder au lien que je ve. cependant je ne sait pas quels arguments mettre dans tags et item (vu que je ne connais pas le nom du bouton sous html )

Sinon j'ai comme tu la déjà remarqué, le bouton est dans une cellule du tableau créé sur html. cependant je ne sait pas comment dire à vba d'y accéder...

merci pour ton attention
Preetamus
Commenter la réponse de Preetamus
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 26 juin 2008 à 15:01
0
Utile
euh.... tu confonds un peu, là....

ça :

Property links As IHTMLElementCollection
Lecture seule
Membre de MSHTML.HTMLDocument

Sub click()
Membre de MSHTML.HTMLLinkElement


c'est pas du code, ca vient de la documentation....

le code a utiliser, c'est bel et bien :

WebBrowser1.Document.Links(0).Click

(modifier l'indice '0' pour cibler le bon lien)
Commenter la réponse de Renfield
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 15:33
0
Utile
lol ok jai un peu confondu...

en ce qui concerne l'indice, justement tout le problème est là .

comment faire pour trouver le bon indice? sachant qu'il y a plus de 60 liens sur la page sur laquelle je travaille.. je dois pas les essayer 1 à 1 non  (stp dis moi que non)

 
Commenter la réponse de Preetamus
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 26 juin 2008 à 15:36
0
Utile
tu peux chercher celui qui a pour libellé: Valider, par exemple
Commenter la réponse de Renfield
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 15:53
0
Utile
ok jai trouvé c t le 42 eme mai il a fallu que je fasse une boucle pour tester toutes les possibilités

il n'y pas pas moyen de trouver plus facilement?
Commenter la réponse de Preetamus
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 16:07
0
Utile
bah ouais tout ce qu'il y a sur le lien c

<tr>
              <td class="clsbuttonblue" nowrap="true" align="center" valign="middle">[javascript:Href_ctl0_tabVol_ucHisto1_CdcPanel1_but_go(); Valider]</td>
 </tr>

pas grand chose ^^. Ce qui est marrant c'est qu'en cliquant sur ce lien, un nouveau bouton "télécharger" apparaît et il faut que je clique sur celui là aussi (et biensur il n'a ni nom ni id..) je sais vraiment pas comment faire... si il faut que je fasse comme ça tout le temps ça va me prendre des siècles. 
Commenter la réponse de Preetamus
Preetamus 14 Messages postés mercredi 25 juin 2008Date d'inscription 10 juillet 2008 Dernière intervention - 26 juin 2008 à 16:37
0
Utile
En tout cas merci pour laide que tu m'as apportée!!

Bonne journée
Commenter la réponse de Preetamus

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.