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. #221
    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 Est ce possible?
    Bonjour,

    Et oui Pat tout peut arriver

    Sinon étude du code toujours en cours (quelle chance de vous avoir pour apprendre...ca en fait pas mal mais ce n'est que du bonheur)

    L'antivirus Avast donne beaucoup de fil à retordre avec les vbscripts ils ne semblent pas trop compatibles...mais ca va aller quand même

    Une question: Il y a un bon moment au début des posts et avant de faire les requêtes il y avait utilisation de la navigation web (type tuto Qwaz + méthode Marc). Mais aprés quelques pages impossible de passer la pop up (possible de la remplir et intéragir mais pas moyen de la valider). Ceci car sur euronext allequities (d'où est lancé la requête actuelle), la page web contient sous la liste de toutes les lettres de l'alphabet et un peu à droite en bleu une invite download qui ouvre une pop up à renseigner puis valider, mais surtout dans ce cas de figure euronext ne renvoie pas que 20 lignes de datas mais bien l'intégralité des lignes de datas soit 1145 environ.
    Bien donc la 1° idée serait de récupérer les paramétres de cette pop up puis de valider (seulement cela ne semble pas possible et sera surement plus long que la requête actuelle utilisée) et surtout la 2° idée serait alors de passer ces paramétres (à la place de iDisplayStart par exemple) dans la requête pour intéragir directement avec le serveur...
    est ce possible et si oui comment?
    A bientôt

  2. #222
    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
    on en avait déjà parlé sur la récupération avec la fenêtre de téléchargement (popup pour IE 8:bande en bas pour IE 9 et 10)

    l'utilisation des apis est requis mais ca n'est pas très fiable j'ai donc laisser tomber cette alternative
    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. #223
    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,

    Oui oui donc si on ne peut pas contourner en mettant les paramétres dans une requête on reste sur la solution avec les scripts qui marche bien, juste un peu longue...par exemple à l'instant vient de mettre 48 secondes...
    En tous les cas jusqu'à présent tout marche c'est formidable
    Etude en cours...

  4. #224
    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 temps de chargement
    Bonjour,
    Pour info qwaz dans le post 186 tu indiques
    Sinon, une autre approche en utilisant la méthode Synchrone/Asynchrone fourni par la requête.
    tu veux dire par là que tant que la réponse à la 1° requête n'est pas terminée la 2° requête ne se lancera pas est ce exact?

    C'est quand même fou que Pat n'ai besoin que de 11 secondes au maximum pour tout charger alors qu'il m'en faut 48...recherche en cours (c'est quand même pas le débit de la connection qui peut créer un tel écart???ou l'ordi lui même???)...il n'y a pas des trucs asynchrones ou qui bloquent quelque part dans le code des scripts en multi tâche?
    A+

  5. #225
    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

    Bonjour Max
    il y a quand même le débit qui n'y est pas pour rien quand même

    maintenant de quoi tu parle ??? 48 seconde pour faire quoi avec quelle version et sur quel sujet tu travail en ce moment

    si tu parle de la dernière version "All equities 1.0.2" utilisant des scripts externes (abeilles de marc ) c'est un peu normal quand même
    48 secondes pour visiter 74 pages ET en extraire La grille et mise en forme sur le sheets ,si tu trouve ca pas assez rapide moi je mange mon écran LCD

    y faut pas pousser quand même

    maintenant si tu parle de Nasdaq sur 10 ans effectivement chez moi moins de 10 secondes en général ,si chez toi ca dure 48 secondes et plus effectivement on a un souci
    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

  6. #226
    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
    Salut Pat,

    Ah bon ok 48 secondes c'est bien pour la dernière version "All equities 1.0.2" je croyais que ca ne mettais que 11 secondes chez toi En fait ici ca met parfois du coup que 35 secondes donc ne mange pas ton ordi pour rien il pourrait encore te servir
    Sinon étude du code en cours...sur VBScript pas mal de questions à poser (mais avant d'abord tout lire )
    Par contre pourquoi pas moyen d'ouvrir les pages*.vbs pour voir ce qu'il y a dans les pages 1 à 73 sous C\tempvbs ? quand je clique 2 fois sur ces pages rien ne se passe...pourtant il est possible de les renommer de les déplacer de les copier...
    de même pourquoi il n'est pas possible de renommer tempvbs en tempvbs1 ou de le déplacer? un message apparait: Cette action ne peut pas être réalisée car le dossier est ouvert dans un autre programme
    Fermer le dossier et réessayer
    pourtant rien n'est ouvert...Il y a une protection sous C?
    mais cependant réussi à copier tempvbs puis le coller ailleurs puis le renommer...
    Comment faire pour ouvrir les pages et renommer, déplacer tempvbs?
    A+
    PS Voici par exemple la page4 qui donne les instructions pour la requête page4 mais ouverte ici avec bloc note:
    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
    dim tablo,tablo2(20,7)
     
    Set DemandeFichier = CreateObject("Microsoft.XMLHTTP")
    DemandeFichier.Open "POST", "https://europeanequities.nyx.com/pd/stocks/data?formKey=nyx_pd_filter_values:1006ef55d4998cc0fad71db6a6f38530", False
    DemandeFichier.setRequestHeader "Accept", "application/json, text/javascript, */*"
    DemandeFichier.setRequestHeader "Accept-Encoding", "gzip , deflate"
    DemandeFichier.setRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"
    DemandeFichier.setRequestHeader "Content-Length", "231"
    DemandeFichier.setRequestHeader "Cache-Control", "no-cache"
    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 "Pragma", "no-cache"
    DemandeFichier.setRequestHeader "Referer", "https://europeanequities.nyx.com/fr/equities-directory"
    DemandeFichier.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.0; rv:29.0) Gecko/20100101 Firefox/29.0"
    DemandeFichier.send "sEcho=5&iColumns=7&sColumns=&iDisplayStart=60&iDisplayLength=20&iSortingCols=1&iSortCol_0=0&sSortDir_0=asc&bSortable_0=true&bSortable_1=false&bSortable_2=false&bSortable_3=false&bSortable_4=false&bSortable_5=false&bSortable_6=false"
    resultat = Replace(DemandeFichier.responseText, "[", vbCrLf)
    tablo = Split(resultat, vbCrLf)
    Z = 0
    For i = 2 To UBound(tablo)
    tablo2(Z, 0) = Split(Split(tablo(i), "\u003e")(1), "\")(0)
    tablo(i) = Split(Split(tablo(i), "/div\u003e"",""")(1), "]")(0)
    tablo2(Z, 1) = Split(tablo(i), """,""")(0)
    tablo2(Z, 2) = Split(tablo(i), """,""")(1)
    tablo2(Z, 3) = Split(tablo(i), """,""")(2)
    tablo2(Z, 4) = Split(tablo(i), """,""")(3)
    tablo2(Z, 6) = Replace(Split(tablo(i), """,""")(5), Chr(34),"")
    On Error Resume Next
    tablo2(Z, 5) = Split(Split(tablo(i), "\u003e")(1), "\")(0)
    Err.Clear
    Z = Z + 1
    Next
    GetObject(, "Excel.Application").Workbooks("itwoo.xls").Worksheets(1).Range("A64").Resize(UBound(tablo2), 7) = tablo2

  7. #227
    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
    salut itwoo
    je ne comprends pas ta dernière question

    il y a qu'un seul vbs dans la version 1.0.2, toi tu parle de la première version avec les !!! vbs externes que j'avais faite

    c'est sans intérêts pour toi

    passe de suite a la version 1.0.2 avec un seul vbs externe qui est exécuté avec des argument injectés par le donneur d'ordre (excel)
    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

  8. #228
    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 Question Dim as New **** et Dim as ****
    Bonjour,

    Oui Pat en effet c'est bien la première version où j'ai étudié ton code...mais j'utilise la dernière ...de toute façon ca marche maintenant (mais il faut souligner Pat tout à ton honneur que ta 1° version épatante m'a été indispensable pour comprendre le code et le cheminement logique pour créer des vbscripts)
    Par contre j'étudie quand même ton (vos) codes pour comprendre (et pas juste simplement utiliser)...ca prend du temps (beaucoup de temps) surtout qu'à chaque pas en avant il y a quelque chose de nouveau...donc étude en cours non finie mais en progrés

    A ce sujet j'ai une question qui me tracasse depuis longtemps:

    Quelle est la différence entre le fait d'avoir New et pas New dans la Dim (par ex ici avec FileSystemObject):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim fso as New FileSystemObject
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim fso as FileSystemObject
    Dans le 1° cas on peut rajouter des propriétés,des éléments ou autre nouveau trucs à FileSystemObject alors que dans le 2° cas il est formatté par VBA sans nouveaux ajouts possibles????

    A+

  9. #229
    Membre éclairé Avatar de Nico Chg
    Homme Profil pro
    Apprenti ingénieur Business Development
    Inscrit en
    Juillet 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti ingénieur Business Development
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 352
    Points : 758
    Points
    758
    Par défaut
    Bonjour,

    Si je ne dis pas de bêtises,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim fso as New FileSystemObject
    Tu déclare ET tu instancie en même temps l'objet fso en tant que FileSystemObject

    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim fso as FileSystemObject
    tu ne déclare que fso en tant que FileSystemObject. Il te faut ensuite l'instancier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set fso = New FileSystemObject
    si tu veux un peu de lecture sur le sujet : Il y a pas mal d'explication ici
    Citation Envoyé par Oscar Wilde
    Je déteste les discussions: elles vous font parfois changer d'avis.

  10. #230
    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,

    d'accord merci pour l'explication et le lien

  11. #231
    Invité
    Invité(e)
    Par défaut
    Salut,

    Il faut faire attention aux effets indésirable de l'auto-instanciation tout de même.

    Je t'es fais 2 exemples montrant pourquoi tu devrai utiliser l'auto-instanciation en connaissance de cause:
    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
     
    Sub Test1()
     
        Dim fso As New FileSystemObject
     
        Set fso = Nothing
        If fso Is Nothing Then
            MsgBox "L'object n'est pas instancié."
        Else
            MsgBox "L'object est instancié malgré 'Set fso = Nothing'"
        End If
     
    End Sub
    Sub Test2()
     
        Dim fso As FileSystemObject
        Set fso = New FileSystemObject
     
        Set fso = Nothing
        If fso Is Nothing Then
            MsgBox "L'object n'est pas instancié."
        Else
            MsgBox "L'object est instancié malgré 'Set fso = Nothing'"
        End If
     
    End Sub

  12. #232
    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
    Merci Nouveau2 pour ton exemple, c'est tip top...

  13. #233
    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,

    Désolé d'avoir été si long mais c'est sûr aprés tests et retests et bien ca ne marche pas complétement droit à 100% la version all equities final V1.02...et d'ailleurs les versions précédentes non plus (avec script) ...Mais ca ne doit pas être bien grave
    Il y a une erreur lors des requêtes et avec toutes les versions vbs aussi bien avec requête et création d'un seul fichier vbs qu'avec création de tous les fichiers vbs, il y a des trous dans les réponses (cela ce voit sur la page excel où il manque des datas).
    Il manque certains fichiers de datas de réponse à la requête vbs (unique ou multiple). Pourtant la requête (ou les requêtes vbs suivant la version) sont bien lancées avec tous les fichiers vbs créés et même le compteur de téléchargement indique que toutes les pages sont téléchargées...pourtant il manque bien des datas à l'appel (c'est un peu au hasard les pages manquantes)
    malgré recherche et apprentissage en cours du code vbs et des scripts pas moyen de trouver la solution, avez vous aussi ca chez vous? C'est mon ordi?
    Peut être faut il mettre juste un vérificateur de la présence des datas et si pas de data relancer le script défectueux?
    Par contre tout le reste vu auparavant (hors script) marche nickel jamais une erreur jusqu'à aujourd'hui...et donc un grand merci à vous tous pour tout cela et tout le reste
    A bientôt

    PS: en plus pas moyen de faire du pas à pas avec F8 pour identifier l'erreur car la boite de message Windows Script Host s'ouvre et indique:
    Echec du chargement du script "C:\... .vbs (Le processus ne peut pas accéder au ficheir car ce fichier est utilisé par un autre processus.)

  14. #234
    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,

    Info complémentaire:tout d'abord l'erreur ne se produit pas à chaque fois, mais si elle se produit elle se produit pour toutes les versions...il me semble bien
    Pour tester et bien même sans supprimer le (les) fichiers *.vbs dans tempvbs il y a toujours des trous mais par contre le fond violet (dans la version finale) de la mise en forme apparait bien lui donc le script pour cette page bien effectué...c'est comme ci parfois la requête ne rapportait pas les datas...existe il une sorte de response.text pour le script pour vérifier son retour de datas?
    Pour le chronométre il ne s'affiche bien qu'une fois que toutes les data sont affichées ou qu'excel à fini de lancer les scripts donc le clic sur ok du chronométre ne semble pas être responsable de cette situation...surtout que si test sans cliquer sur ok cela fait la même erreur...
    Le serveur euronext n'est pas non plus en panne puisqu'il renvoie des datas pour presque toutes les pages...mais est ce que la succession de requête est trop rapide pour lui s'il recoit un trop grand nombre de sollicitations au même moment venues de toutes parts (= pleins de requêtes de tout le monde)?
    Vraiment pour le moment je n'ai pas la moindre idée ou piste pour réparer cela, je ne vois même pas d'où cela peut venir et puis c'est encore une erreur vicieuse qui ne se produit pas à chaque fois comme par hasard!!! super dur à détecter mais par contre je n'ai pas changé un iota du code et j'aurais parié dur comme fer qu'il n'y avait pas d'erreur il y a peu...j'avais l'impression d'avoir compris et bien c'était juste une impression

    bon WE

  15. #235
    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
    salut itwoo
    .
    ..existe il une sorte de response.text pour le script pour vérifier son retour de datas?
    [/QUOTE]

    tu a trouvé tout seul le moyen de vérifier ton idée est très bonne

    ton idée correspondrait a 1 ou 2 ligne de code supplémentaire dans le code du vbs unique dans la version 1.0.2 pour palier a ces trous dans la feuille excel

    je te laisse faire tes petits essais si tu y arrive pas fait moi signe je te le ferais


    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

  16. #236
    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 Pat,

    Ok merci donc je regarde dans cette direction...cette erreur ca me rapelle aussi celle qu'on avait à une époque que l'on a résolu en pointant un élément <>0
    Tant que je plante pas mon ordi avec le script ca ira
    Bon WE

  17. #237
    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 correction
    Bonjour,

    Dans la version finale et un lancant à l'instant et bien en fait il y a aussi certains scripts qui ne raménent pas de datas ni le fond violet...d'autres juste le fond violet et pourtant le compteur dans la feuille excel indique bien que toutes pages sont chargées...

    version correction en cours...pour "essayer" de corriger cela...

    A bientôt

  18. #238
    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

    Etant donné que tous les scripts vont écrire dans le même fichier, n'y aurait-il pas des problèmes d'accès ?
    Il faudrait peut-être faire un essai en activant le partage dans le fichier Excel.

    [Edit]
    Je viens de regarder le code, en particulier celui du vbs, ne faudrait il pas assigner le getObject à un objet, faire les manipulation nécessaire puis affecter Nothing à cette objet, ce qui semble devoir être fait pour la libération du COM?
    C'est plus une question qu'un affirmation et je sais que ceci ne répond pas à la question de Itoow.

    http://msdn.microsoft.com/fr-fr/libr...=vs.90%29.aspx
    Lorsque vous avez fini d'utiliser l'objet, définissez toutes les références à l'objet avec la valeur Nothing. Cela permet au runtime de disposer du composant COM.
    Soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ExcelObj = GetObject(, "Excel.Application").Workbooks("itwoo all equities final V1.02 .xls").Worksheets(1)
    ExclObj.Range("A" & WScript.Arguments(2)).Resize(UBound(tablo2), 7) = tablo2
    ExcelObj = Nothing
    Il faudrait si l'on ne souhaite pas mettre le fichier Excel en partage, savoir si celui-ci est déjà occupé avec une autre instance de vbs. Mais peut-être que je fais fausse route avec mon histoire d'accès.
    [/Edit]

    [Edit2]
    Quelques simplification de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    firstcel = i * 20 + i + 2
    =
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Path  & "\requeteallequities" & ".vbs"
    =
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Path & "\requeteallequities.vbs"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public comptechangement ' Utilisé nul part
    Public NBPAGES As Long 'A déclarer en local
    Public debut 'A déclarer en local
    Il manque aussi quelques déclarations de variables, le mieux étant d'ajouter Option Explicit en début de module pour ne pas en oublier.
    Ah et attention aux accents sur les variables, c'est déconseillé.
    [/Edit2]

    Toujours est il le principe est très intéressant, bravo.

    ++
    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

  19. #239
    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

    salut qwazerty

    je doit dire pour ma défense que le code version 1.02 est un prototype
    variable non déclarée ect......

    j'ai laisser ce soin a itwoo de le remettre au propre ca lui aura permis de comprendre le principe du vbs multitâche avec argument injecté

    méthode correspondant a la contribution de Marc "accélérer une requête sur plusieurs pages web"

    itwoo pour le control des table pleine ou non, pour éviter cela sa se prépare dans le code générateur du vbs

    on va y arriver a noel max aura tout compris
    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. #240
    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,

    Oui ca va venir ...en effet Pat tu as lancé la version en prototype et ca marche déjà trés bien
    L'idée de Marc est vraiment géniale...
    Yes Qwaz il y a plein de petites de mises à jour et autres à faire merci de ton aide...

    Pour la vérification bien mis en effet dans le générateur vbs par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    response = "str_demande_fich = DemandeFichier.responseText"
    verif = "if len(str_demande_fich)=0 then Ag = True: msgbox(""Erreur script n°" & i & """)"
    Simplement je n'arrive pas pour le moment en revenant dans la sub principale à sortir Ag du fichier vbs ni même d'ailleurs str_demande_fich avec le getobject suis en recherche sur ce point pour savoir comment remonter l'information dans la sub principale pour si erreur la relancer... ca va venir pour Noel tu as raison Pat,

    Du coup pour le moment fait une vérification (un peu bancale) sur le nombre de ligne de la feuille excel mais pas sûr de sa fiabilité (pas assez de recul)

    A bientôt

+ Répondre à la discussion
Cette discussion est résolue.

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