Extraction Donnees

Bonjour ,

J'aurais besoin de votre aide afin d'extraire des donnees via code source html, malgre quelques jours de test et recherche je suis bloque

j'arrive a importer des tables avec un ID table mais le code suivant n'a pas de Id juste table

je vous mets le code en questions et vous a colorer en jaune la partie a extraire

Merci de votre aide

capture

Bonjour,

Dans la mesure où tu ne peux pas utiliser PowerQuery (puisque tu es en xl2010), il reste la solution "traitement de texte".

Voici un code qui te permettra d'aspirer tous les tableaux de ta page :

Sub Maj()
Dim URL$, obj As New DataObject
On Error Resume Next
    DoEvents
    URL = [www]
    On Error Resume Next
    With CreateObject("MSXML2.XMLHTTP")
        .Open "GET", URL, False
        .Send
        If .Status = 200 Then
            For i = 1 To UBound(Split(.responseText, "<table"))
                txt = "<table" & Split(Split(.responseText, "<table")(i), "</table>")(0) & "</table>"
                obj.SetText txt
                obj.PutInClipboard
                ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count)
                ActiveSheet.Paste
                ActiveSheet.Name = "Table #" & i
            Next
        End If
    End With
End Sub

In fine, c'est pratiquement l'équivalent de PowerQuery, voire même en plus rapide et conservant la mise en forme du tableau.

exemple

Salut Steelson,

Je te remercie beaucoup de m'avoir aide sur ce sujet , je vais tester de suite

ENCORE MERCI

Merci Steelson, je ne connaissais pas: CreateObject("MSXML2.XMLHTTP")

ça fonctionne super bien

@Isabelle,

En fait entre WINHTTP.WinHTTPRequest.5.1 et MSXML2.XMLHTTP , je ne sais pas très bien la différence.

L'originalité ici est de passer par le presse-papier pour faire comprendre à excel qu'il s'agit d'un tableau et le faire réagir en tant que tel. Je n'ai pas trouvé d'autre moyen.

Rechercher des sujets similaires à "extraction donnees"