Bonjour à tous,
Je voudrais faire un code qui va chercher un taux sur une page internet (avec internet explorer), à une date rentrée par l'utilisateur, pour l'utiliser plus tard.
J'ai réussi à aller chercher un taux sur la page d'un site, mais le taux est celui du jour... pour pouvoir avoir le bon taux à la bonne date, il faut quand je suis sur le site internet, que je clique sur un petit calendrier, et choisissent une date dedans. à ce moment, la page web se modifie (sans changer son url) pour changer la date, et le taux qui va avec.
Je pense que mon principal problème est que ce calendrier est enfoui dans une grosse arborescence de html, et mon manque de connaissance en html me bloque pour avancer.
Les tuto que je lis m'aident à cliquer et modifier la barre d'adresse de google par exemple, mais je n'arrive pas à les adapter pour cliquer sur ce calendrier.
Je voudrais savoir si quelqu'un pourrait m'aider à avancer?
voici l'adresse de la page internet : EUR 1Y Euribor (360 Day) | EUR8Y | Cotations en temps réel
Je voudrais cliquer sur le calendrier situé au milieu gauche de la page, en mettant par exemple la date au 01/01/2012.
ci_joint mon code pour simplement obtenir le taux en date du jour (sans intervenir sur le calendrier) :
Merci d'avance pour votre aide !
Je voudrais faire un code qui va chercher un taux sur une page internet (avec internet explorer), à une date rentrée par l'utilisateur, pour l'utiliser plus tard.
J'ai réussi à aller chercher un taux sur la page d'un site, mais le taux est celui du jour... pour pouvoir avoir le bon taux à la bonne date, il faut quand je suis sur le site internet, que je clique sur un petit calendrier, et choisissent une date dedans. à ce moment, la page web se modifie (sans changer son url) pour changer la date, et le taux qui va avec.
Je pense que mon principal problème est que ce calendrier est enfoui dans une grosse arborescence de html, et mon manque de connaissance en html me bloque pour avancer.
Les tuto que je lis m'aident à cliquer et modifier la barre d'adresse de google par exemple, mais je n'arrive pas à les adapter pour cliquer sur ce calendrier.
Je voudrais savoir si quelqu'un pourrait m'aider à avancer?
voici l'adresse de la page internet : EUR 1Y Euribor (360 Day) | EUR8Y | Cotations en temps réel
Je voudrais cliquer sur le calendrier situé au milieu gauche de la page, en mettant par exemple la date au 01/01/2012.
ci_joint mon code pour simplement obtenir le taux en date du jour (sans intervenir sur le calendrier) :
Code:
Public Sub recup_taux_euribor12m()
Dim lienInternet As SHDocVw.InternetExplorer
Dim pageInternet As MSHTML.HTMLDocument
Dim leTaux As MSHTML.HTMLSpanElement
Dim tauxWeb As String
Dim tauxeuribor12m As Double
'Dim bouton As MSHTML.HTMLDocument
Set lienInternet = New SHDocVw.InternetExplorer
lienInternet.Visible = True
lienInternet.navigate "http://www.boursorama.com/cours.phtml?symbole=1xEUR8Y&vue=histo"
' Attente avec timeout de 10 s
If WaitIE(lienInternet, 10) Then
' 10 s écoulées et page non chargée
MsgBox "Time out!"
Else
' Page chargée, on continue
Set pageInternet = lienInternet.Document
' on va dans le item où est située la valeur du taux
Set leTaux = pageInternet.getElementsByClassName("cotation").Item(0)
' le taux est dans le texte de l'item
tauxWeb = leTaux.innerText
'on converti le taux en nombre
tauxeuribor12m = CDbl(Val(tauxWeb))
'cadreDate = pageInternet.getElementById("form")(0)
MsgBox tauxeuribor12m, Title:="Le taux euribor12m"
End If
End Sub
' Attend que la page internet soit chargée
' pTimeOut est un time out en secondes (WaitIE vaut True si Timeout)
Public Function WaitIE(oIE As InternetExplorer, Optional pTimeOut As Long = 0) As Boolean
Dim lTimer As Double
lTimer = Timer
Do
DoEvents
If oIE.readyState = READYSTATE_COMPLETE And Not oIE.Busy Then Exit Do
If pTimeOut > 0 And Timer - lTimer > pTimeOut Then
WaitIE = True
Exit Do
End If
Loop
End Function
' Recherche d'un bouton par son nom dans le document
Private Function GetButton(Document As HTMLDocument, ButtonId As String) As MSHTML.HTMLInputElement
If Document.getElementById(ButtonId).Length > 1 Then
Set GetButton = Document.getElementById(ButtonId)(1)
Else
Set GetButton = Document.getElementsById(ButtonId)(0)
End If
End Function
Merci d'avance pour votre aide !