Récupération de données de site web via VBA
Bonjour,
J'ai une procédure pour récupérer des données de site Web qui fonctionne mais pas sur un site en particulier avec lequel je travail régulièrement la procédure qui fonctionne est celle-ci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| Sub MajTx()
'Ouverture
Dim XMLReq
Set XMLReq = CreateObject("MSXML2.XMLHTTP")
XMLReq.Open "Get", "https://www.boursorama.com/cours.phtml?symbole=1xEURUS", False
XMLReq.Send
If XMLReq.Status <> 200 Then
MsgBox "Problème " & XMLReq.Status & " " & XMLReq.Status.Text
Exit Sub
End If
'Récupération
Dim ExchangeRate As String
Dim HTMLDoc
Set HTMLDoc = CreateObject("htmlFile")
HTMLDoc.body.innerHTML = XMLReq.ResponseText
ExchangeRate = HTMLDoc.getElementsByClassName("c-instrument c-instrument--last").Item(0).innerHTML ' utilisez "c-instrument c-instrument--previousclose" pour valeur de la veille
'Affichage
Worksheets("Feuil1").Range("C2").Value = ExchangeRate
End Sub |
Je l'ai modifier avec le site qui m'interesse et j'ai une erreur de type 424:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| Sub KeepTechData()
'Ouverture
Dim XMLReq
Set XMLReq = CreateObject("MSXML2.XMLHTTP")
XMLReq.Open "Get", "https://www.sandvik.coromant.com/fr-fr/product-details?c=316-12HM450-12015P%201730", False
XMLReq.Send
If XMLReq.Status <> 200 Then
MsgBox "Problème " & XMLReq.Status & " " & XMLReq.Status.Text
Exit Sub
End If
'Récupération
Dim ExchangeRate As String
Dim HTMLDoc
Set HTMLDoc = CreateObject("htmlFile")
HTMLDoc.body.innerHTML = XMLReq.ResponseText
Debug.Print HTMLDoc.body.innerHTML
ExchangeRate = HTMLDoc.getElementsByClassName("_ngcontent-ng-c1811224674").Item(0).innerHTML
'Affichage
Worksheets("Feuil1").Range("C2").Value = ExchangeRate
End Sub |
J'ai erreur 424 objet requit.
Que puis je faire pour corriger cela?