Rapport de message :*
 

Re: Ouvrir une page web et récupérer les données d'un tableau

Titre du sujet : Re: Ouvrir une page web et récupérer les données d'un tableau
par myDearFriend! le 04/03/2023 20:35:35

Bonsoir Icedarts, le Forum,

 

Tu trouveras en pièce-jointe sans doute une façon de faire :

 

DANS UN MODULE DE CODE STANDARD (ex : Module1)

Option Explicit

Sub RecupDatas()
' myDearFriend! - www.mdf-xlpages.com
' Mars 2023

' Nécessite une référence à "Microsoft HTML Object Library"
Dim vTabLiens As Variant
Dim iDoc As New MSHTML.HTMLDocument
Dim TabDoc As HTMLTable
Dim Lnk As Long, NbLignTab As Long, Lmax As Long, L As Long
Dim NbColTab As Byte, C As Byte
    'Liste des liens
    vTabLiens = Sheets("Liens").Cells(1, 1).CurrentRegion.Value
    'Pour chaque lien
    For Lnk = 1 To UBound(vTabLiens, 1)
        'Récup table datas
        With CreateObject("MSXML2.XMLHTTP")
            .Open "GET", vTabLiens(Lnk, 1), False
            .send
            iDoc.body.innerHTML = .responseText
        End With
        Set TabDoc = iDoc.getElementById("tableSort")
        
        NbLignTab = TabDoc.Rows.Length - 1
        NbColTab = TabDoc.Rows(0).Cells.Length - 1
        
        'Complétude du tableau
        With Sheets("Données")
            For L = 1 To NbLignTab
                For C = 0 To NbColTab
                    .Cells(Lmax + L + 1, C + 1).Value = TabDoc.Rows(L).Cells(C).innerText
                Next C
            Next L
        End With
        Lmax = Lmax + NbLignTab
    Next Lnk
    
    MsgBox "Récup terminée !"
    
    Set TabDoc = Nothing
    Set iDoc = Nothing
End Sub

Nb : tu n'as pas besoin de faire usage d'un webBrowser pour le fonctionnement de ce code.

 

En espérant t'avoir aidé.

 

Bien cordialement,