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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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?