une qui marche avec les deux (vba,vbs)
re
marc une version simplifié qui fonctionne avec les deux tout le temps (30 essaie d'affiler )
mais tu disais si j'ai bien compris la boucle sur le length des enfant de l'élément quand elle changeait
on prenait la table
hors dans le code si dessous la ligne verte ne marche pas et pour cause c'a n'est pas les chidren qui sont caduques mais l'élément lui même pointé au départ
en débloquant la ligne verte on s'en rend bien compte
il faut donc re pointer l'élément maitre et la table désiré en l'occurrence ici le chidren(1) ou le element.getelementsbytagname("table")(0) 0 puisque c'est la seule dans ces enfant de cet élément
par contre il n'y a plus de tolérance avec le readystate c'est 4 un point c'est tout
et le .all sur la combo ne fonctionnait pas (getelem.......)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| Sub DemoNASDAQieB()
Const QUOTE$ = "abbv", TXT$ = " Import en cours "
texte = " Connexion
" & Time & "**"
Application.StatusBar = texte
With CreateObject("InternetExplorer.Application")
.Navigate "http://www.nasdaq.com/symbol/" & QUOTE & "/historical"
.Visible = True
Do While .ReadyState < 4: Loop
Application.StatusBar = texte & "page chargée a: " & Time & "**"
With .document.getelementbyid("ddlTimeFrame"): .Value = "3y": .onchange: End With
With .document.getelementbyid("quotes_content_left_pnlAJAX")
With .Children: While .Length: DoEvents: Wend: End With
'.getelementsbytagname("table")(0).innertext
End With
code = .document.getelementbyid("quotes_content_left_pnlAJAX").getelementsbytagname("table")(0).innertext
.Quit
End With
MsgBox code
End Sub |
en pointant de cette Facon il est impossible de pointer le mauvais élément
Code:
code = .document.getelementbyid("quotes_content_left_pnlAJAX").getelementsbytagname("table")(0).innertext
vue du timing de la satut bar
Pièce jointe 154947