Passer de IE11 à Edge

Résolu/Fermé
dadacourse Messages postés 128 Date d'inscription lundi 12 décembre 2011 Statut Membre Dernière intervention 5 mars 2023 - Modifié le 25 mars 2020 à 11:16
yg_be Messages postés 23223 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 24 septembre 2024 - 4 sept. 2020 à 18:36
Bonjour,
Depuis plusieurs années, je récupère automatiquement les résultats du PMU via une macro Excel en passant par le navigateur InternetExplorer 11.
Ce programme ouvre chaque course l'une après l'autre, en ouvrant pour chacune le "Tableau des partants" puis les "rapports probables" et enfin "Afficher tous les rapports".
Pijaku (Franck) un internaute génial et très sympathique m'avait écrit un programme pour Excel (ci-après la copie).
Aujourd'hui, je voudrais changer de navigateur, Microsoft Edge ou Google Chrome (au choix de celui qui voudra bien m'aider) , donc réécrire un programme adapté… ce dont je suis incapable.

D'avance je vous remercie de toute aide.

Sub TousLesRapports()
Dim IE As New InternetExplorer
Dim IEDoc As HTMLDocument
Dim coll_Li As IHTMLElementCollection
Dim Li As HTMLGenericElement

'ouverture de la page Internet Explorer
IE.navigate "https://www.pmu.fr/turf/index.html#15032020/R1/C1"
IE.Visible = True
'attente du chargement complet de la page IE
WaitIE IE
Application.Wait Time + TimeSerial(0, 0, 2)
'on cible le document de cette page
Set IEDoc = IE.document
'attente du chargement complet de l'élément Document de la page IE
WaitDoc IEDoc
Application.Wait Time + TimeSerial(0, 0, 2)
'on créé notre collection contenant toutes les balises <li>
Set coll_Li = IEDoc.getElementsByTagName("li")
'on boucle sur toutes les balises <li> de notre collection
For Each Li In coll_Li
    'Si la className de la balise <li> est "actionbar-item js-all-report-button"
    If Li.className = "pari-list-item pari-list-item--all js-all-report-button" Then
        'on clique
        Li.Click
        'on quitte
        Exit For
    End If
Next
End Sub
------------------------------------------------------------------------------------------------------
Sub WaitIE(IE As InternetExplorer)
'attente du chargement complet de la page IE
   Do Until IE.ReadyState = READYSTATE_COMPLETE
      DoEvents
   Loop
End Sub
---------------------------------------------------------------------------------------------------
Sub WaitDoc(doc As HTMLDocument)
'attente du chargement complet de l'élément Document
  Do While Not doc.ReadyState = "complete"
    DoEvents
  Loop
End Sub
--------------------------------------------------------------------------------------------------
Sub TousLesRapports02()
'
' TousLesRapports02 Macro
'

'
    Sheets("01 (2)").Select
Dim IE As New InternetExplorer
Dim IEDoc As HTMLDocument
Dim coll_Li As IHTMLElementCollection
Dim Li As HTMLGenericElement

'ouverture de la page Internet Explorer
IE.navigate " [https://www.pmu.fr/turf/index.html#15032020/R1/C1"]
IE.Visible = True
'attente du chargement complet de la page IE
WaitIE IE
Application.Wait Time + TimeSerial(0, 0, 2)
'on cible le document de cette page
Set IEDoc = IE.document
'attente du chargement complet de l'élément Document de la page IE
WaitDoc IEDoc
Application.Wait Time + TimeSerial(0, 0, 2)

'on créé notre collection contenant toutes les balises <li>
Set coll_Li = IEDoc.getElementsByTagName("li")
'on boucle sur toutes les balises <li> de notre collection
For Each Li In coll_Li
    'Si la className de la balise <li> est "actionbar-item js-all-report-button"
    If Li.className = "partants actif visible" Then
        'on clique
        Li.Click
        'on quitte
        Exit For
    End If
Next

'on créé notre collection contenant toutes les balises <li>
Set coll_i = IEDoc.getElementsByTagName("i")
'on boucle sur toutes les balises <li> de notre collection
For Each i In coll_i
    'Si la className de la balise <li> est "actionbar-item js-all-report-button"
    If i.className = "icon icon-rapports-probables" Then
        'on clique
        i.Click
        'on quitte
        Exit For
    End If
Next

'on créé notre collection contenant toutes les balises <li>
Set coll_Li = IEDoc.getElementsByTagName("li")
'on boucle sur toutes les balises <li> de notre collection
For Each Li In coll_Li
    'Si la className de la balise <li> est "actionbar-item js-all-report-button"
    If Li.className = "pari-list-item pari-list-item--all js-all-report-button" Then
        'on clique
        Li.Click
        'on quitte
        Exit For
    End If
Next

Set IE = Nothing
Application.Wait Time + TimeSerial(0, 0, 3)
Application.SendKeys "^a"
    Application.Wait Now + TimeValue("00:00:01")
    Application.SendKeys "^c"
    Application.Wait Now + TimeValue("00:00:01")
    Application.SendKeys "^w"
    Windows("Récup Web.xlsm").Activate
    Sheets("01 (2)").Select
    Range("" & [AM12].Value).Select
    ActiveSheet.Paste
End Sub
A voir également:

9 réponses

dadacourse Messages postés 128 Date d'inscription lundi 12 décembre 2011 Statut Membre Dernière intervention 5 mars 2023 3
26 mars 2020 à 11:38
Bonjour,....
Merci baladur13 pour la transcription en écriture correcte.
Peut-être connais-tu pijaku ? C'est lui qui avait écrit ce programme. Et si oui, comment puis-je le contacter !!
Bonne journée
0