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 :

Pilotage Internet Explorer


Sujet :

Macros et VBA Excel

  1. #121
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 898
    Points : 8 529
    Points
    8 529
    Par défaut
    Salut

    Pas tant, pas tant.

    Alors pour l'entête pas vraiment de tuto précis, j'ai gratté à droite à gauche et j'ai bien observé l'entête fourni avec l'inspecteur de FireFox (faudra que je regarde sur Chrome et IE).

    JSON, a ce que j'en sais... ou crois en savoir... est un type de base de donnée Java, il est utilisé avec des applet comme Ajax ou ExtJS (c'est la que je l'ai rencontré la 1ère fois ), c'est une structure que je trouve assez lourde, très verbeuse, tu peux voir cette structure dans le fichier créé par la macro.

    Pour le Parser, je n'ai même pas regardé le code, pour une explication sommaire, le faite de parser des données, c'est juste de passer d'une structure de donnée illisible par une application à un format qu'elle peut lire. Ici le format JSon, qui brut ne peut pas être utilisé dans Excel, le Parser se charge donc de lire les données et de le remettre en ordre pour qu'excel (ou un "programmeur") puisse les utiliser facilement.
    Le terme parser est en fait bien plus large, car si tu fais un code qui sais indenter du code VB par exemple, il va falloir que ton code comprenne que tu entre dans une structure If, puis voir s'il y a un ElseIf, ou un Else, ou directement End If pour en fonction de ça placer les tabulation... c'est aussi du parsing, a ce que j'en sais.

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  2. #122
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour qwazerty
    a regarder de plus prêt le parser et bien trop verbeux comme tu dis
    par contre ce qui m'intéresse c'est de savoir comment tu créer l'URL dans la requête
    car j'ai tout mis les paramètre en commentaire sauf les 3 lignes de l'URL
    et j'obtiens bien le data.txt ,après le découpage je préfère faire autrement

    sur quoi tu t'es basé pour ajouter les paramètre a l'url

    bref comment et ou trouver ces donnée
    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

  3. #123
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 898
    Points : 8 529
    Points
    8 529
    Par défaut
    Salut

    Sous FireFox, quand tu es sur la page où sont affichées les données

    https://europeanequities.nyx.com/en/...73-XPAR/quotes

    Dans FireBug (touche F12 pour le lancer), tu vas dans la section "Réseau", tu cliques sur le bouton "effacer" pour supprimer l'historique de chargement, ensuite tu cliques dans le feuille sur le bouton qui rafraichi les données.
    Dans FireBug, tu verras une ligne se mettre en place, c'est la requête, une fois le chargement des données terminé, tu places ta souris sur cette ligne (GET ...), le nom de la ligne va changer et afficher une URL.
    Tu copies cette URL (Clique droit, Copier l'adresse), il y a une partie fixe et 2 termes variables qui représentent les dates de début et de fin.
    Ces dates sont au format epoch time, qui représente le nombre de secondes écoulées depuis le 1 janvier 1970.


    Pour ce qui est des paramètres d'entêtes, tous ne sont peut-être pas obligatoire, c'est possible, je n'ai pas pris le temps de tous tester...
    [Edit]
    Je viens de regarder et en effet même avec une expression très réduite le code reste fonctionnel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DemandeFichier.Open "GET", URl
    Plus le send bien sûr.
    Par contre mon coté "parano" me fait dire qu'il vaut mieux reproduire une entête saine et complète vis à vis du serveur, si celui-ci voit passer trop de requêtes étranges, les admins en seront peut-être alarmé.... Je ne m'y connais pas suffisamment pour dire si oui ou non cela poserait problème et chez nous, nous avons un dicton "Dans le doute... abstient toi", donc ça rajoute 5 lignes, autant faire une entête digne de ce nom je pense.
    [/Edit]

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  4. #124
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour Qwazerty
    c'est exactement la meme chose sur IE et F12 je n'avais jamais explorer autre chose que l'onglet html ou script ou css
    Pièce jointe 141095

    c'est trop top ca simplifie la vie quand meme
    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

  5. #125
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 898
    Points : 8 529
    Points
    8 529
    Par défaut
    Salut

    Je n'en ai pas parlé pour ne pas surcharger le post

    Oui j'ai fais plus d'essais hier et j'avais regardé IE ainsi que Chrome, d'ailleurs IE et Chrome sont encore plus complet que FireFox car ils proposent de visualiser le fichier retourné par la requête.
    J'ai fais plusieurs Screen pour l'occasion, je vais essayer de poster une petite contribution à ce sujet je pense

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  6. #126
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    voila j'ai repris ta version

    il y a 2 chose qui sont bien pratique a savoir

    tout d abords l'utilisation de l'object "MSXML2.xmlHttp" implique très souvent que les données obtenues provienne du cache et non de la page elle même j' ai donc modifier l'appel comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DemandeFichier.Open "GET", URl  & "?nocache= + Math.random()", False
    mais les arguments me génère du texte après les dates dans la colonne 1

    l'argument "False" rend la boucle do loop du readystate obsolète (plus besoins)

    ensuite m'étant perdu dans le json j'ai décider de travailler sur le response.texte et non sur le body.response

    enfin voila ca donne a peu pres ca
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    Option Explicit
     
    'Accept  application/json, text/javascript, */*
    'Accept-Encoding gzip, deflate
    'Accept-Language fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
    'Connection keep - alive
    'Host europeanequities.nyx.com
    'Referer https://europeanequities.nyx.com/en/products/equities/FR0000120073-XPAR/quotes
    'User-Agent  Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
    'X-Requested-With    XMLHttpRequest
     
    Sub testeXMLReq()
        Application.ScreenUpdating = False
        XMLReq "18/03/2011", "17/03/2014"
    Application.ScreenUpdating = True
    End Sub
     
    'https://europeanequities.nyx.com/sites/europeanequities.nyx.com/modules/common/common_listings/custom/nyx_eu_listings/nyx_eu_listings_price_chart/pricechart/pricechart.php?q=historical_data&adjusted=1&from=1326758400000&to=1395360000000&isin=FR0000120073&mic=XPAR&dateFormat=d/m/Y
     
    Sub XMLReq(DateDebut As String, DateFin As String)
    'Il faut activer la bibliotheque Microsoft WinHTTP Service
     
    Dim DemandeFichier As New MSXML2.xmlHttp
    Dim URl As String
    Dim texte, table
        'On code l'URL avec les date de début et de Fin de période
        URl = "https://europeanequities.nyx.com/sites/europeanequities.nyx.com/modules/common/common_listings/custom/nyx_eu_listings/nyx_eu_listings_price_chart/pricechart/pricechart.php?q=historical_data&adjusted=1&from="
        URl = URl & CStr(Date2Long(CDate(DateDebut))) & "000&to="
        URl = URl & CStr(Date2Long(CDate(DateFin))) & "000&isin=FR0000120073&mic=XPAR&dateFormat=d/m/Y"
     
        'On génère la requête
        DemandeFichier.Open "GET", URl & "?nocache= + Math.random()", False
        DemandeFichier.setRequestHeader "Accept", "application/json, text/javascript, */*"
        DemandeFichier.setRequestHeader "Accept-Encoding", "gzip , deflate"
        DemandeFichier.setRequestHeader "Accept-Language", "fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3"
        DemandeFichier.setRequestHeader "Connection", "keep -alive"
        DemandeFichier.setRequestHeader "Host", "europeanequities.nyx.com"
        DemandeFichier.setRequestHeader "Referer", "https://europeanequities.nyx.com/en/products/equities/FR0000120073-XPAR/quotes"
        DemandeFichier.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0"
     
        'On l'exécute la requête
        DemandeFichier.send
     
            'le 3 eme argument dans le open concerne le ready state pas besoins de cette boucle
        'On attent le chargemet des données
        'Do
           'DoEvents
        'Loop While DemandeFichier.readyState <> 4
        table = parse2(DemandeFichier.responseText)
        With Sheets(4)
       .Range("A2").Resize(UBound(table), 8) = table
       End With
     
    End Sub
    Function parse2(texte As String) As Variant
       Dim carccoupé As Variant, i As Long, e As Long, lignes_données As Variant, tabligne As Variant, tablo As Variant
        carccoupé = Array("open", "high", "low", "close", "nymberofshares", "numoftrades", "turnover", "currency")
        texte = Replace(texte, "{""data"":[", "")
        texte = Replace(texte, "{""ISIN"":""FR0000120073"",""MIC"":""NYSE Euronext Paris"",""date"":""", vbCrLf)
        texte = Replace(texte, "EUR""},", "")
        For i = LBound(carccoupé) To UBound(carccoupé)
            texte = Replace(texte, """,""" & carccoupé(i) & """:""", "#")
        Next
        lignes_données = Split(texte, vbCrLf)
        ReDim tablo(UBound(lignes_données), 8)
        For i = 1 To UBound(lignes_données)
            tabligne = Split(lignes_données(i), "#")
            For e = LBound(tabligne) To UBound(tabligne) - 1
               tablo(i, e) = tabligne(e)
            Next
        Next
          parse2 = tablo
    End Function
    il me reste a arranger les entêtes de colonne mais bon ca tourne

    qu'en pense tu ?
    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

  7. #127
    Expert éminent sénior
    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
    Points : 18 677
    Points
    18 677
    Par défaut

    Pour ne pas lire dans le cache, remplacer GET par POST
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  8. #128
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour marc

    oui mais post cause des perte de donnée par rapport au time update trop long

    on en a parler il y a pas si longtemps cela dit peut être qu'ici ca peut marcher
    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

  9. #129
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut RE
    Re
    il semblerait que itwoo ai disparu
    qwazerty j'ai regardé si on pouvait faire la même chose avec Nasdaq mais je n'ai rien trouvé dans l'inspecteur F12
    tu pourrais essayer de voir si on peut ajouter des argument a la requette ?
    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

  10. #130
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 898
    Points : 8 529
    Points
    8 529
    Par défaut
    Salut

    Itwoo avait prévenu qu'il ne viendrait pas durant 1 semaine.

    Pour ce qui est de la requête sur Nasdaq, il faut passer des paramètres supplémentaires directement au moment du Send, on trouve ces paramètre dans l'onglet POST de l'inspecteur une fois rentré dans le détail de la requête.
    Par exemple 6m|false|F, pour afficher les infos sur 6 mois.

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    Sub XMLReqNasDaq() 'Periode As String
    'Il faut activer la bibliotheque Microsoft WinHTTP Service
     
    Dim DemandeFichier As New MSXML2.xmlHttp
    Dim URl As String
    Dim StreamFile As New ADODB.Stream
    Dim Json As New Json
    Dim ParseData As Object
    Dim Item As Variant, ValueItem As Variant
    Dim iCol As Long
    Dim IEDoc As New HTMLDocument
     
     
        'On code l'URL avec les date de début et de Fin de période
        URl = "http://www.nasdaq.com/symbol/f/historical"
    'Accept  */*
    'Accept-Encoding gzip, deflate
    'Accept-Language fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
    'Cache-Control   no-cache
    'Connection keep - alive
    'Content-Length  10
    'Content-Type    application/json; charset=UTF-8
    'Host www.nasdaq.com
    'Pragma no - cache
    'Referer http://www.nasdaq.com/symbol/f/historical
    'User-Agent  Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
    'X-Requested-With    XMLHttpRequest
        'On génère la requête
        DemandeFichier.Open "POST", URl, False
        DemandeFichier.setRequestHeader "Accept", "*/*"
        DemandeFichier.setRequestHeader "Accept-Encoding", "gzip , deflate"
        DemandeFichier.setRequestHeader "Accept-Language", "fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3"
        DemandeFichier.setRequestHeader "Connection", "keep -alive"
        DemandeFichier.setRequestHeader "Cache-Control", "no-cache"
        DemandeFichier.setRequestHeader "Host", "www.nasdaq.com"
        DemandeFichier.setRequestHeader "Referer", "http://www.nasdaq.com/symbol/f/historical"
        DemandeFichier.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0"
        DemandeFichier.setRequestHeader "Content-Length", "10"
        DemandeFichier.setRequestHeader "Content-Type", "application/json; charset=UTF-8"
     
        'On l'exécute la requête
        DemandeFichier.send "6m|false|F"
     
        'On copie les données dans un fichier
        StreamFile.Type = 1                              'binary
        StreamFile.Open
        StreamFile.write DemandeFichier.responseBody
        StreamFile.SaveToFile "E:\Data.txt", 2                'overwrite
        StreamFile.Close
     
        'On charge les données html transmises dasn un htmlDocument
        IEDoc.body.innerHTML = DemandeFichier.responseText
     
     
    End Sub
    Une fois les paramètres correctement transmis, le serveur retourne un contenu html, représentant la partie tableau de la page, qu'il faudra placer dans un htmlDocument, comme dans l'exemple que je t'ai transmis par MP pour le programme TV. Pour ensuite aller chercher les valeurs pour remplir le tableau Excel, il faudra simplement reprendre le code existant que vous aviez établi. Mais pour l'instant dodo

    Au fait merci pour le paramètre false sur le Open de la requête, je n'avais pas fait attention qu'on pouvait la rendre synchrone.

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  11. #131
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour qwazerty
    j'espère que toi dodo bien

    l'argument apres le send fonctionne chez moi IE 11
    voila un exemplaire qui fonctionne avec l'object MSXML2.xmlHttp pour les deux

    l'intégration du body dans un nouveau object iedoc de cette façon je n'aurais jamais cru que ca fonctionnerait

    moi je faisait comme dans l'exemple qui suit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    'On charge les données html transmises dans un htmlDocument
        '*****************************************************************
        'methode 1 qwazerty
        'IEDoc.body.innerHTML = DemandeFichier.responseText
        'MsgBox IEDoc.body.outerHTML
        '*************************************************************
        'methode2  Patrick
        Set IEDoc = CreateObject("htmlfile")
        With IEDoc
            .write DemandeFichier.responseText
        End With
        'MsgBox IEDoc.body.outerHTML
    '*************************************************************
    ca simplifie la vie quand même ta méthode je garde

    ensuite pour le parser du dasdaq je suis allé au plus simple aussi
    je me suis contenter puisque l'on avait le document au format html de récupérer simplement le .innertext
    qui nous donne le tableau ligne par lignes avec un espace entre chaque cel
    alors la chose fut simple
    1 split par vbcrlf
    1 split par les espace de chaque split vbcrlf et intégration dans la table point final

    reste un petit souci que je n'ai pas encore compris

    la requête Euronext ne fonctionne pas par le bouton valider
    les dates apparemment sont pas interprétée correctement
    par contre la sub teste pour Euronext avec les dates en dur en arguments fonctionnent

    un dernier petit détail aussi qui peut être gênant a ne pas oublier dans ton futur tuto
    la librairie utilisée pour le streamfile ,que j'ai éliminé purement et simplement (on en a pas besoins dans ce cas présent)
    est absente chez moi
    bon allez voila le fichier
    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

  12. #132
    Membre actif
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Septembre 2013
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2013
    Messages : 411
    Points : 231
    Points
    231
    Par défaut re
    Bonjour,

    Patrick rassure toi je suis de retour
    Pour la démarche je prends votre dernière version la teste (a plusieurs reprises) et pour ne pas trop encombrer le post je vous demande en message perso des explications si besoin ca vous convient?
    A tout cas chapeau
    A bientôt

  13. #133
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour itwoo

    tu peut aussi remercier qwazerty qui a largement participé

    j'attend les résultat de l'examen de qwazerty sur le dernier problème rencontré a part ca je ne crois pas que l'on pourra trouver une mécanique plus stable et aussi rapide

    voila au bout de 3 mois on arrive au but et vu les librairie utilisées ca va fonctionner un bon moment

    je me suis bien amusé et appris beaucoup de chose
    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

  14. #134
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 898
    Points : 8 529
    Points
    8 529
    Par défaut
    Salut

    Pour cet histoire de bug avec le bouton "valide", c'est juste parce que CDate ne reconnait pas le 31/02/2014 comme étant une date valide, doit on vraiment lui en vouloir

    Pour l’utilité du fichier filestream, il était uniquement la pour pouvoir visualiser rapidement le contenu de la réponse à la requête, rien de plus.

    [Edit]
    Je précise également ma pensée, puisque visiblement ça n'était pas claire, lorsque je dit
    Pour ensuite aller chercher les valeurs pour remplir le tableau Excel, il faudra simplement reprendre le code existant que vous aviez établi.
    je fais allusion aux codes déjà produits qui avaient pour but de reprendre les données contenues dans la Table, celle-ci étant dans le IEDoc créé à la fin de la requête. Par exemple avec un DataObject, ou une boucle comme celles présentées dans le tutoriel. Peut importe, c'est comme si on travaillait sur un document ouvert avec IE, sauf qu'ici, on se passe d'IE.
    Voila j'espère avoir éclairci la situation et mes propos.

    Pour ce qui est de demander des infos sur le code, le poste faisant déjà 4 pages, on est plus à une page près, autant mettre les détails ici si des choses restent flous, comme ça ceux qui pourraient avoir besoin de ce code auront toutes les informations utiles pour le comprendre.
    [/Edit]
    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  15. #135
    Membre actif
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Septembre 2013
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2013
    Messages : 411
    Points : 231
    Points
    231
    Par défaut re tests
    Bonjour,

    Oh oui biensur que je remercie Qwazerty aussi

    En effet beaucoup à apprendre en regardant votre code...qui est vraiment pro!!!

    ca c'est sûr aussi pas mal de questions, mais avant tout les tests bloquent suite à ma configuration a savoir il manque une bibliothéque etle format date ne s'active pas correctement voici:

    Pouvez vous me dire ce qu'il faut activer (voir télécharger?) pour tester la dernière version de Qwazerty
    table itwoo Requete.zip
    dans VBA

    suite au message d'erreur : erreur de compilation: Projet ou bibliothéque introuvable pour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim StreamFile As New ADODB.Stream
    dans outils => référence => VBA indique Manquant Microsoft ActiveX Data Object 6.1 Library, apparemment j'ai juste Microsoft ActiveX Data Object 6.0 Library

    De même Patrick sur la dernière version
    table itwoo Requete version qwazerty et patrick.zip
    VBA indique:

    erreur d'exécution 13: Incompatibilité de type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    URl = URl & CStr(Date2Long(CDate(DateFin))) & "000&isin=FR0000120073&mic=XPAR&dateFormat=d/m/Y"
    ici il faut peut être mettre sur mon ordi dd/mm/yy ou mm/dd/yy quelque chose de ce genre...

    Bonne journée

  16. #136
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    bonjour
    itwoo

    en fait la librairie qu'utilise qwazerty est plus récente sans doute que la notre
    dans les références dans l'éditeur VBE décoche celle qui est déclarée manquante
    et cherche la même avec le chiffre 2 a la place de 6 c'est tout

    ensuite pour l'erreur vient tout simplement de la date qui n'existe pas "31/02/2014"
    je suis tellement dans la mécanique que je ne l'avais pas vu

    voila si tu change ces deux chose dans le model qwazerty et Patrick ca devrait fonctionner
    quoi il me semble déjà avoir changer la référence

    en tout cas ca fonctionne nickel chez moi

    qwazerty je suis en train de refaire mon PROG tv ca va simplifier la vie ca plutôt que mes split sur du texte
    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. #137
    Membre actif
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Septembre 2013
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2013
    Messages : 411
    Points : 231
    Points
    231
    Par défaut BRAVO VOUS ETES TROP FORTS
    Bonjour,

    Vraiment merci infiniment pour votre aide CA MARCHE
    Je vous suis trés reconnaissant, vous avez fait un heureux
    Bien le temps de découvrir votre code en détail (de l'analyser) de faire plusieurs tests dans le temps(il y aura surement toujours quelques petites surprises) et je reviens vous poser les questions et afficher le probléme comme résolu
    Au plaisir

  18. #138
    Membre actif
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Septembre 2013
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2013
    Messages : 411
    Points : 231
    Points
    231
    Par défaut Questions
    Bonjour,

    Le code marche mais si vous pouviez m'éclairer sur les 1° points suivants:

    a)
    Malgré ton explication Qwaz
    Pour la rosace, et pour le reste d'ailleur, j'utilise beaucoup les inspecteur de code fourni par les navigateurs internet, une fois le chargement lancé, en utilisant le sélecteur d'objet, il suffit de cliquer sur la rosace et l'inspecteur te montre la partie du code source qui la gère.
    pour cela d'accord voici:
    <p class="ajax_loading_wrap" id="ajaxloader" style="display: none;">
    avec <img width="32" height="32" src="http://content.nasdaq.com/images/ajax-loader-2.gif"/>
    Mais peux tu me réexpliquer comment tu fais pour voir display passer de none à block stp, j’ai bien pointé dessus avec la flèche du curseur qui l’a bien identifié en l’entourant du cadre bleu mais display reste à none, je ne vois pas block, as tu en plus mis un espion quelque part?

    b)
    En utilisant le early binding ou la fenêtre variable locale un point m'échappe depuis longtemps (il me manque des infos utilies) si vous pouvez m'aider par exemple avec l'exemple suivant extrait du code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub ListBox1_Click() 'la ListBox1 va s'activer lors d'un click dessus
        With Sheets(3)
            temps = .ListBox1.List(.ListBox1.ListIndex, 1) 
        End With
    comment faites vous pour trouver la syntaxe précise pour temps à savoir .ListBox1.List(.ListBox1.ListIndex, 1)
    en effet en faisant
    temps= sheet(3). aucun early binding
    avec Me= sheets(3) il y a du early binding mais jusqu'à Me.ListBox1.List (arg, arg) pas la syntaxe
    temps = Me.ListBox1.List(.ListBox1.ListIndex, 1) 'ne marche pas il faut mettre un argument en .listbox1.listindex1
    et si l'on regarde dans la fenêtre variable locale il y a bien
    me => listbox1 => MAIS RIEN EN LIST

    Il est vraiment trop bien votre code
    Au plaisir

  19. #139
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut
    Bonjour itwoo

    alors je ne comprends pas du tout du moins je crois que si !!!

    tu pose une question sur la rosace hors on en est plus la puisque que l'on a décider de laisser tomber la méthode IE qui était bien trop aléatoire dans ce cas bien précis

    du a la gestion des attentes (wait....)

    on te l'a dit qwazerty et moi quand il y a un nouveau post de lui ou moi c'est que l'on avancé

    je le répète il faut suivre sinon on parle dans le vent

    avec qwazerty on a bifurquer sur l'utilisation de requête argumentées avec l'object(Microsoft.xmlhttp)bien plus stable et rapide vu la quantité de données a traiter

    pour qwazerty:
    j'ai modifier la declaration de l'object(demandefichier ) en late bending vu le probleme des librairie différentes selon la version de office et meme Windows
    comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim DemandeFichier
        Set DemandeFichier = CreateObject("Microsoft.XMLHTTP")  'instancie l'object
    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. #140
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    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 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut RE derniere version du jour
    Re
    voila vu que le fichier commençais a prendre un volume important (16 mega) pas d'explication a ce jour(bizzarerie excel encore )

    je l'ai complètement repris selon la dernière mise au point que l'on avais fait avec qwazerty


    mais cette fois si pas de référence a activer tu le prend comme tel
    essai le tu m'en diras des nouvelles et essais de suivre il ne faut pas négliger le fait que l'aide qui t'es apporté es bénévole et les membres le font avec plaisir et c'est mon cas , alors la moindre des choses c'est de suivre parce que sinon on ne se comprend pas

    allez récupère ce fichier final tu constatera que aucune références n'est activée a part celle indispensables pour un fichier Excel
    c'est un point qui me semble important dans le sens ou moi ayant essayé le fichier sur 2007(32bits),2010 ET 2013 en 64 bits je me suis rendu compte que les références était différentes voir inexistantes donc voila prend et c'est tout
    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

+ Répondre à la discussion
Cette discussion est résolue.
Page 7 sur 17 PremièrePremière ... 34567891011 ... DernièreDernière

Discussions similaires

  1. Réponses: 193
    Dernier message: 13/12/2014, 07h48
  2. [XL-2010] Pilotage Internet explorer contenant javascript depuis excel
    Par anthony14123 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/12/2013, 15h08
  3. [XL-2003] Pilotage Internet Explorer
    Par clarinet dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 25/03/2013, 19h13
  4. Pilotage Internet Explorer
    Par bolof dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 03/09/2012, 21h25
  5. [OLE] Pilotage internet explorer
    Par yaclo dans le forum MFC
    Réponses: 4
    Dernier message: 22/03/2005, 20h03

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