Importation Données Web et tri après importation

  • Initiateur de la discussion Initiateur de la discussion ByAlex
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

ByAlex

XLDnaute Nouveau
Bonjour à tous,

je n'ai pas pour Habitude d'utiliser Excel de façons "avancé" et j'ai quelques lacunes, donc je cherche des solutions.

Voila, j'ai découvert la fonction " Obtenir des données à partir du Web ". jusque là ok. je prend ce que je souhaite etc.. mais lors de l'importation je me retrouve avec 2 pourcentages différents dans une même colonne.

Comment pouvoir remettre un pourcentage par colonnes ? au lieu de retrouver les deux pourcentages dans les 2 colonnes... si c'est possible

dans mon exemple ça correspond aux colonnes D et E fraichement importer et sans retouche ( site en Question : Tennis )

( les lignes inutiles pour moi je les supprimerai manuellement, sauf si une technique existe aussi .. bien entendu !

rendu site :

table1.PNG


rendu importation :

Capture&.PNG


Alors ensuite vous allez me demander pourquoi vouloir prendre ces données sur ce site ? et bien tout simplement je souhaite enregistrer les résultats pour pouvoir sortir des % de réussites selon les stats que ce Monsieur trouve avec son algo.

la suite logique sera de trouver des données pour croiser son tableau avec les résultats du match simplifié "victoire" ou "défaite"

merci beaucoup !!

PS : ce résultat sera pour une utilisation personnelle...
 
BONJOUR
juste pour le fun en passant
VB:
Sub test()
    url = "https://www.tennisbrain.com/"
    t = getHTMLtable(url)
End Sub

Function getHTMLtable(url)
    Dim TRS, TDS, DIVS, TD, TD2
    With CreateObject("microsoft.xmlhttp")
        .Open "get", url, False
        .send
        code = .responsetext
    End With
    With CreateObject("htmlfile")
        .body.innerhtml = code
        .body.innerhtml = .getelementsbytagname("TABLE")(1).outerhtml
        Set TRS = .getelementsbytagname("TR")
        For Each elem In TRS
            If elem.innerhtml Like "*Profile*" Then elem.Parentelement.RemoveChild (elem)

            'restructuration et replacement de la ligne des "%"
            Set DIVS = elem.getelementsbytagname("DIV")
            If DIVS.Length = 2 Then
                Set TD = .createelement("TD"): TD.innerhtml = DIVS(0).innertext:
                Set TD2 = .createelement("TD"): TD2.innerhtml = DIVS(1).innertext
                For Each childs In elem.ChildNodes: elem.RemoveChild (childs): Next
                elem.appendchild (TD): elem.appendchild (TD2)
            End If
        Next
        'memorisation dans le clipborad au format html
        .parentwindow.clipboardData.setData "Text", "<html>" & .body.innerhtml & "</html>"
    End With
    With ActiveSheet: .UsedRange.Clear: .Cells(1).Select: .Paste: .UsedRange.HorizontalAlignment = xlCenter: End With
End Function
Capture.JPG
 
Bonjour ByAlex, le fil,

Tu as écrit : « 😳 niveau supérieur pour moi ! mais j'adore ! Merci 😉 »

Alors pour mieux exprimer ta joie, au bas du post de patricktoulon,
tu peux cliquer sur « J'aime » et choisir le 2ème smiley « J'adore ».

(c'est juste une petite remarque en passant, hein ?)

soan
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour