OVH Cloud OVH Cloud

Taux de change automatique

2 réponses
Avatar
Guillaume 92
Bonjour
J'aimerais faire un tableau Excel qui comporte une cellule avec un taux de
change.
Cette cellule doit récuperer sur un site le taux de change pour ensuite
l'appliqué à des prix.
Comme cela mes prix en $ seront calculés en ?(Euro) avec une valeur exacte.

Merci de m'aider et si quelqu'un connait un site ou il est possible de
chargé le taux de change je l'en remercie 2 fois plus.

2 réponses

Avatar
j
ci-dessous fonction adaptée pour récupérer le dernier cousr du USD :

on peut l'appeler dans une macro :
MsgBox valo_Boursorama("3fFRFUS")

ou directement dans une page excel :
=valo_boursorama("3fFRFUS")


http://jacxl.free.fr/



Public Declare Function OuvreInternet Lib "wininet" _
Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As
Long, _
ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags
As Long) As Long
Public Declare Function fermeInternet Lib "wininet" _
Alias "InternetCloseHandle" (ByVal hInet As Long) As Integer
Public Declare Function Ouvrepage Lib "wininet" _
Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl
As String, _
ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal
dwFlags As Long, _
ByVal dwContext As Long) As Long
Public Declare Function code_page Lib "wininet" _
Alias "InternetReadFile" (ByVal hFile As Long, ByVal sBuffer As String,
_
ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer


Function valo_Boursorama(cod)
'renvoie le cours selon B, ou bien "" si échec
Dim texte_code As String * 200
page_à_lire = "http://www.boursorama.com/cours.phtml?symbole=" & cod

encr:
internet = 0
'boucle jusqu'à trouver une connexion internet
Do While internet = 0
internet = OuvreInternet("toto", 1, vbNullString, vbNullString, 0)
Application.Wait Now + 0.5 / 24 / 3600
Loop
URL = 0
URL = Ouvrepage(internet, page_à_lire, vbNullString, _
ByVal 0&, &H80000000, ByVal 0&) 'ouvre la page Web
Application.Wait Now + 0.5 / 24 / 3600

'lit le texte de la page jusqu'à trouver "dernier"
txtlu = ""
Do While InStr(txtlu, "<td>Dernier</td>") = 0 And InStr(txtlu, "</HTML>") 0
code_page URL, texte_code, 200, nb_caractères_lus 'ajoute 200 caractères par
sécurité
txtlu = txtlu & Left(texte_code, nb_caractères_lus)
If InStr(txtlu, "<HTML>") = 0 Then Exit Do
Loop
code_page URL, texte_code, 200, nb_caractères_lus
txtlu = txtlu & Left(texte_code, nb_caractères_lus)

fermeInternet URL 'ferme la page
fermeInternet internet 'ferme Internet

'si la page n'est pas une page B, recommencer
If InStr(Left(txtlu, 40), "Boursorama") <= 0 Then GoTo encr

valo_Boursorama = ""
'rechercher le nb qui est après "<td>Dernier</td>" et qui se termine par (c)
If InStr(txtlu, "<td>Dernier</td>") > 0 And InStr(txtlu, "</B>") >
InStr(txtlu, "<td>Dernier</td>") Then
txtlu = Right(txtlu, Len(txtlu) - InStr(txtlu, "<td>Dernier</td>") - 16 + 1)
'chercher le premier nb
Do While Not IsNumeric(Left(txtlu, 1))
txtlu = Right(txtlu, Len(txtlu) - 1)
Loop
'chercher le cours de bourse
txtlu = Left(txtlu, InStr(txtlu, "</B>") - 1)
If IsNumeric(txtlu) Then valo_Boursorama = 1 * txtlu
End If
End Function




"Guillaume 92" a écrit dans le message
de news:
Bonjour
J'aimerais faire un tableau Excel qui comporte une cellule avec un taux de
change.
Cette cellule doit récuperer sur un site le taux de change pour ensuite
l'appliqué à des prix.
Comme cela mes prix en $ seront calculés en ?(Euro) avec une valeur
exacte.


Merci de m'aider et si quelqu'un connait un site ou il est possible de
chargé le taux de change je l'en remercie 2 fois plus.





Avatar
j
pour aller chercher une valeur sur Internet :
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#bourse_api

un site sur lequel on trouve le cours du USD :
http://www.boursorama.com/cours.phtml?symbole?FRFUS




"Guillaume 92" a écrit dans le message
de news:
Bonjour
J'aimerais faire un tableau Excel qui comporte une cellule avec un taux de
change.
Cette cellule doit récuperer sur un site le taux de change pour ensuite
l'appliqué à des prix.
Comme cela mes prix en $ seront calculés en ?(Euro) avec une valeur
exacte.


Merci de m'aider et si quelqu'un connait un site ou il est possible de
chargé le taux de change je l'en remercie 2 fois plus.