IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Excel - Json et sa toison ( importation ) [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 44
    Par défaut Excel - Json et sa toison ( importation )
    bonjour a tous

    je voudrais faire suite a cette discutions de patricktoulon ,Marc-L ,Sebphyto

    http://www.developpez.net/forums/d15...arger-donnees/


    déjà je travail sur xp et excel 2007 (oui bah j'aime bien mais bon j'ai un autre pc avec windows 10 et excel 2007 )

    ceci explique peut etre que certains codes de patricktoulon ne fonctionne pas chez moi ( erreur automation )
    fichier v6 qui extraire les liens json fonntionne bien
    pas encore tt lu mais j'ai pas trop compris pourquoi ne pas etre passe par la page > "stats-pmu?id_course=868036"


    j'essaye de tt comprendre ( vba) et j'avoue j'ai pas trop le niveau

    ....
    moi ce que je souhaite c'est a partir de cette page /entraineur/sebastien-hardy_e1004963

    je souhaite aller sur le lien json << ses pensionnaires >> et extraire vers excel le contenu de celle ci pour utiliser après les données


    je vais partir de ce code de PatrickToulon

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
     
    Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    Sub test()
        Feuil1.Cells.Clear
        Dim IE As Object, doc As Object, URL As String, i As Long
    '  hop hop je change la page pour ma page entraineur 
     
        URL = "http://www.geny.com/entraineur/sebastien-hardy_e1004963"
        Set IE = CreateObject("internetexplorer.application")
        IE.navigate URL
        IE.Visible = True
        Do: DoEvents: Loop While IE.busy Or IE.readystate <> 4
        Set doc = IE.document
        With doc
            texte = texte & .getelementsbytagname("table")(2).outerhtml & vbCrLf & "<br>"
            Set onglet = .getelementsbyclassname("yui-nav")(0)
            For i = 1 To onglet.Children.Length - 1
                onglet.Children(i).Children(0).Click
                'Do: DoEvents: Loop While IE.busy Or IE.readystate <> 4
                Sleep 700
                ' Application.Wait (Now + TimeValue("0:00:01"))
                Set matable = .getelementsbytagname("table")(i + 2)
                texte = texte & matable.outerhtml & vbCrLf & "<br>"
            Next
        End With
        IE.Quit
        With CreateObject("HTMLFile")
            If .parentWindow.clipboardData.SetData("Text", texte) Then
                Application.ScreenUpdating = False
                With Feuil1: .Cells.Clear: .Paste .Cells(1): .Hyperlinks.Delete: End With
                .parentWindow.clipboardData.ClearData "Text"
            End If
        End With
    End Sub
    je comprend le gros du code
    j'ai du chercher a quoi correspondait << & vbCrLf >> retour chariot et saut a ligne ( équivalent a la touche retunr ? )

    .outerhtm ??, kesako ca ?

    j'obitent une erreur sur cette meme ligne erreur 91 varaible objet ou de bloc non defni
    Images attachées Images attachées  

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 44
    Par défaut
    tout en essayant de trouve une approche , je continue mes lectures de patricktoulon & Sebphyto
    et y a de quoi faire ( ) un post de 30 pages ( plus les mails et autres conversation en dehors que l'on devine )

    et parfois il manque des pièces ( copie d'ecran je supposse )

    j'ai bien essayer de me servir de l'outils Special >get element


    et je pense qu'une bonne partie de ma réponse se trouve dans cette page #63 et 64 mais il faut que je les digères avant de les exploiter

    http://www.developpez.net/forums/d15...arger-donnees/

  3. #3
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour,

    oui voir les posts #64 & 87

    Edit : sinon il y a plus simple pour un débutant car après-tout une structure json n'est que du texte balisé
    et donc facilement extractible via les fonctions VBA manipulant du texte comme Split entre autres …

    Juste à partir de la requête utilisée par un navigateur : http://www.geny.com/flux-donnees-fic...vaux&type=json
    et se trouvant aisément via son outil d'inspection !

    _________________________________________________________________________________________________________
    Je suis Paris, Istanbul, Berlin, Nice, Bruxelles, Charlie, …

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 44
    Par défaut
    merci pour le l'info je vais regarder cela a tete repose car la je sature un peu des lectures ...
    mais une chose m'intrigue

    d'ou viens ce début de lien ?
    stats-records-hand-flux-donnees .... ( www.geny.com/stats-records-hand-flux-donnees..... )


    car moi si je devais importer les statisqtiques
    je l'aurai fait de cette page
    http://www.geny.com/stats-pmu?id_course (lien statistique dans le menu de gauche )



    je pense que dans 1 er tps
    je vais essayer d'importer dans excel par exemple le 3 ieme et dernier bouton << evolutions des poids >>
    avantage c'est tjs la meme page de demarage

    ça ne me sert a rien sinon a comprendre comment faire pour ensuite !

    merci pour l'edit je regarderais également

    oui manipuler du textes avec des splits & autres instr .... en vba ca me convient

  5. #5
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Le lien du post #3 vient de l'utilisation de l'outil d'inspection d'un navigateur,
    le tien je n'en sais rien car ce n'est pas le même : tu es donc le seul à pouvoir répondre ‼

    Avec juste Split & Replace en moins de trente lignes de code pour alimenter une variable tableau des données
    et les afficher dans une feuille de calculs, cinq minutes d'observation des données et cinq minutes pour coder.
    Multiplier le temps par deux pour un débutant …

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 44
    Par défaut
    merci pour la page c'est parfait je n'avais pas regarder mais oui c'est bien ce que j'ai besoin
    http://www.geny.com/flux-donnees-fic...vaux&type=json

    bon je pourrais faire mon code vba et clore le post mais ( si je veux recommencer ailleurs c'est mieux de comprendre )




    je ne trouve pas ce fameux lien (ni aucun n'autres d'ailleurs ) dans l'outils de développement ( on parle bien de f12 ? du navigateur)
    ma config sur XP ( avec une version de chrome , une version de IE8 , et une version firefox )
    et autre pc sur windows 10 avec edge ou chrome

    y a surement un truc qui' m échappe la voici ce que j'obtiens avec chrome et f12

    j'ai bien les balises ,ect ... mais point de lien ....

    hop hop une image ... Nom : _Prix_Roxane_Griff.JPG
Affichages : 1477
Taille : 147,5 Ko

  7. #7
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut



    Oui c'est bien via F12 au niveau du Réseau :   visualisation sous Firefox   …

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 44
    Par défaut
    merci , pour la démonstration

    j'ai bien trouve les liens

    je devrais pouvoir faire ce que je souhaite dorénavant

    allez hop au boulot now ( un petit code vba ) ou bien demain ...

  9. #9
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut



    Je te laisse avancer;     j'ai deux / trois versions en attente selon le besoin réel …

  10. #10
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonsoir
    je suis aller voir un peu cette page geny

    ils ont encore renforcé leur protection anti robot

    dans F12 on te donne bien les éléments bouton pensionnaire et uy-page mais des que tu le fait par VBA walouh!! quand tu liste ca te donne la moitié des bouton la table il la trouve pas
    rebelote comme avec sebphyto on passe par le parent puis on remonte jusque a obtenir un élément probant
    mais en redescendant jusqu'à l'élément voulu par ce qu'il le trouve des le click poffff object with non définie
    je fait un debug.print sur son outerhtml pour voir si je suis au bon endroit et c'est bon
    je vérifie mon code si j'ai pas fait une erreur...... ben non

    je te souhaite bon courage perso je recommencerais pas ce que j'ai fait avec seb

    mais je peut te dire d'avance "ne perds pas ton temps c'est walouh!!!!

    tu ira plus vite a le faire a la main si le copier coller n'est pas bloqué
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  11. #11
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Salut Patrick !

    Aucun souci de mon côté pour récupérer la liste des pensionnaires de l'entraîneur via une requête !
    Sinon je ne l'aurais pas laissé « s'avancer » …

  12. #12
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut Re
    Bonjour Marc
    Chez moi F12 me donne rien a l enregistrement resau. J ai donc pensé. Que c etait pas possible
    Tres étonant je reessairais. Ce soir
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  13. #13
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut



    Il y a pourtant une visualisation déjà dans le post #7 …

  14. #14
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    et oui je travaille sur la premiere url qui l a donné
    a savoir "http://www.geny.com/entraineur/sebastien-hardy_e1004963%22"
    avec ie le clic sur le bouton "ses pensionnaires"dans son Href c'est dynamique "Href=#.." il n'y a donc pas de url recuperable dans le Href

    je vais essayer cette url
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  15. #15
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    C'est pourtant si simple Patrick :

    juste en regardant la visualisation du post #7, rien de dynamique dans la requête !   (voir lien post #3)

  16. #16
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut Re
    J ai dis dans le. Message precedent que nous regardions pas la meme url
    Je travaillais avec la premiere qu il a donné pas celle du json dans la première chez. Moi les href sont vides je te fait une capture si tu veux j ai meme. Listé tout les href de la. Page il n y a pas le. Json
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  17. #17
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2014
    Messages : 44
    Par défaut
    c'est pas la peine de s’embêter plus pour moi , pour le moment ,j'ai tous les éléments pour faire ce que je souhaite

    il me reste juste a faire un petit bout de code pour transférer cette page ( fluxdonnees..... ) vers excel et l'exploiter ensuite
    cela me semble tres jouable


    c'est plus qu'une question de de tps ( faut juste que je me décide a le faire )

    et une fois fini je posterai mon bout de code ( pour correction lol , la je sens je rigolerai moins )

    a partir de cette page

    "http://www.geny.com/entraineur/sebastien-hardy_e1004963%22"

    avec firefox et f12 et l'explication de Marc L

    on peux trouver les liens << fluxdonnees ... json>> de la page en questions

  18. #18
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut
    re
    je n'utilise pas Firefox du tout

    en attendant voila pour ton json
    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
    24
    25
    26
    27
    Sub testreq()
    coupe = Array("reussiteVictoires:", "idCheval:", "courses:", "nomCheval:", "victoires:", "reussitePlaces:", "places:", "{", "}")
    URL = "http://www.geny.com/flux-donnees-fiche-entraineur?id_entraineur=1004963&type_onglet=chevaux&type=json"
    Set req = CreateObject("microsoft.xmlhttp")
    With req
    .Open "GET", URL, False
    .send
    code = Split(Replace(Replace(req.responsetext, Chr(34), ""), "reussiteVictoires:", vbCrLf), "[{")(1)
    End With
    For a = 0 To UBound(coupe)
    code = Replace(code, coupe(a), "")
    Next
    Debug.Print code
    ligne = Split(code, vbCrLf)
    ReDim tablo(1 To UBound(ligne) + 1, UBound(coupe) - 2)
    For i = 1 To UBound(ligne)
    tablo(i, 0) = Split(ligne(i), ",")(0)
    tablo(i, 1) = Split(ligne(i), ",")(1)
    tablo(i, 2) = Split(ligne(i), ",")(2)
    tablo(i, 3) = Split(ligne(i), ",")(3)
    tablo(i, 4) = Split(ligne(i), ",")(4)
    tablo(i, 5) = Split(ligne(i), ",")(5)
    tablo(i, 6) = Split(ligne(i), ",")(6)
    Next
    Cells(1, 1).Resize(1, UBound(coupe) - 2) = coupe
    Cells(2, 1).Resize(UBound(ligne), UBound(coupe) - 2) = tablo
    End Sub
    dans ta page 1 voila e que j'ai avec IE

    Nom : Capture.JPG
Affichages : 1207
Taille : 216,2 Ko

    Une question
    comment obtiens tu l'url de la page "http://www.geny.com/entraineur/sebastien-hardy_e1004963%22"
    je pense avoir une solution toute automatique
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  19. #19
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    voila comment j'obtiens toutes les urls des JSON des entraineurs de la course QUINTE+ d'aujoud'hui
    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
    24
    25
    26
    27
    28
    Sub test2()
    Dim ReQ1, Req, Url1, Url2, liste 
    Url1 = "http://www.geny.com/partants-pmu/2017-01-24-cagnes-sur-mer-pmu-prix-de-marseille_c868494"
    Set ReQ1 = CreateObject("microsoft.xmlhttp")
    With ReQ1
    .Open "GET", Url1, False
    .SetRequestHeader "Accept", "text/html, application/xhtml+xml, */*"
    .SetRequestHeader "Accept-Language", "fr-FR"
    .SetRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
    .SetRequestHeader "Accept-Encoding", "gzip, deflate"
    .SetRequestHeader "Host", "www.geny.com"
    .SetRequestHeader "Connection", "Keep - Alive"
    .SetRequestHeader "Cache-Control", "no-cache"
    .send
    codehtmlpage = .responsetext
    'Debug.Print .responsetext
    End With
    With CreateObject("htmlfile")
    .write codehtmlpage
    Set mesa = .getelementsbytagname("a")
    For i = 0 To mesa.Length - 1
    t = mesa(i).href
    If t Like "*/entraineur/*" Then liste = liste & "http://www.geny.com/flux-donnees-fiche-entraineur?id_entraineur=" & Split(t, "_e")(1) & "&type_onglet=chevaux&type=json" & vbCrLf
    Next
    End With
    liste = Split(liste, vbCrLf)
    Cells(1, 1).Resize(UBound(liste), 1) = liste
    End Sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  20. #20
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Citation Envoyé par fifi5622 Voir le message
    et une fois fini je posterai mon bout de code
    Oui j'aimerais bien mais Patrick n'a pas pu s'empêcher d'attendre encore une fois !

    Parmi les manières de traiter du texte en VBA, il y a les classiques fonctions InStr & Mid
    mais aussi en plus efficaces  Replace  &  Split  et ici reprenant les titres des colonnes :

    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
    24
    25
    26
    27
    28
    Sub DemoAlaRomaineDuTempsDeCesar()
             Dim SPQ$(), SP$(), VA, C&, SN$(), R&
             ActiveSheet.UsedRange.Clear
        With CreateObject("MSXML2.XMLHttp")
            .Open "GET", "http://www.geny.com/flux-donnees-fiche-entraineur?id_entraineur=1004963", False
            .setRequestHeader "DNT", "1"
            .setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64)"
             On Error Resume Next
            .send
             On Error GoTo 0
            If .Status = 200 Then SPQ = Split(.responseText, "{") Else Beep: Exit Sub
        End With
            SP = Split(SPQ(3), """:")
            ReDim VA(1 To UBound(SPQ) - 1, 1 To UBound(SP))
        For C = 1 To UBound(SP)
                  SN = Split(SP(C - 1), """")
            VA(1, C) = SN(UBound(SN))
        Next
        For R = 2 To UBound(VA)
               SP = Split(SPQ(R + 1), """:")
            For C = 1 To UBound(SP)
                VA(R, C) = Replace(Split(SP(C), ",")(0), """", "")
            Next
                VA(R, C - 1) = Replace(VA(R, C - 1), "}", "")
        Next
            VA(R - 1, C - 1) = Replace(VA(R - 1, C - 1), "]", "")
            [A1].Resize(R - 1, C - 1).Value = VA
    End Sub

    Si cela t'intéresse on pourra voir plus tard la méthode des expressions rationnelles, deux Pattern et c'est réglé.

    Et aussi le traitement du fichier json en tant qu'objet, c'est le plus simple à comprendre à la lecture du code
    car les noms des champs du fichiers texte sont directement exploitables en tant que propriétés …

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Test si une ligne excel est vide avant d'importer le ficher
    Par skillipo dans le forum VBA Access
    Réponses: 3
    Dernier message: 30/11/2007, 12h25
  2. [Access/Excel] Manque de ressource pour importation
    Par t1marlartiste dans le forum Access
    Réponses: 2
    Dernier message: 10/07/2007, 11h11
  3. Réponses: 6
    Dernier message: 22/09/2006, 11h50
  4. Import data d'Excel ds 2 table lié par clé primaire
    Par lord_paco dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 10/05/2005, 10h31
  5. [VB.NET] Import donnes d'excel : chiffres et lettres
    Par JohnGT dans le forum Windows Forms
    Réponses: 5
    Dernier message: 19/10/2004, 19h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo