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

Contribuez Discussion :

[Article] Manipulation d'Internet Explorer via VBA


Sujet :

Contribuez

  1. #61
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Novembre 2011
    Messages : 6
    Points : 8
    Points
    8
    Par défaut
    Après quelque recherche j'ai trouvé qu'il était possible de copier coller une page internet.
    Fin copier pour l'instant, le code ci dessous permet de copier la page dans le presse papier mais pas de le coller dans excel je pense que c'est du au fait que excel passe en tache de fond quand on utilise internet explorer, mais je sais pas comment le corriger...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Copypaste()
        Set IE = CreateObject("InternetExplorer.Application")
        IE.navigate "http://fr.wikipedia.org/wiki/ASIT"
        IE.Visible = True
        Application.Wait (Now + TimeSerial(0, 0, 5))
        SendKeys "^a"
        SendKeys "^c"
        Sheets("Feuil1").Select
        Range("A1").Select
        ActiveSheet.Paste
    End Sub

  2. #62
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut attendre la fin des scripts
    Citation Envoyé par AlainTech Voir le message
    Bonjour à tous,

    Je l'ai déjà mentionné dans de nombreuses discussion mais il me paraît utile de le dire ici.
    Même quand IE a terminé, il se peut que le Document (le contenu de la page) n'ait pas fini de se charger.

    Après chaque changement de page, il faut répéter la structure suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        WaitIE IE
        Set IEDoc = IE.document
        WaitDoc IEDoc
    avec les 2 procédures d'attente:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub WaitIE(IE As InternetExplorer)
      Do While Not IE.readyState = READYSTATE_COMPLETE
        DoEvents
      Loop
    End Sub
     
    Sub WaitDoc(doc As HTMLDocument)
      Do While Not doc.readyState = "complete"
        DoEvents
      Loop
    End Sub
    Testé et retesté dans de nombreux contextes...
    Bonjour,
    J'utilises effectivement cette méthode, qui fonctionne bien en général par contre je fais face à une page utilisant du angular.js et les infos dont j'ai besoin n'arrivent qu' après que IE.readyState = READYSTATE_COMPLETE et doc.readyState = "complete"

    Peut on attendre la fin du chargement du DOM à l'aide de l'événement DOMContentLoaded ?
    Voyez vous une autre solution ?

  3. #63
    Membre actif
    Inscrit en
    Juillet 2013
    Messages
    772
    Détails du profil
    Informations forums :
    Inscription : Juillet 2013
    Messages : 772
    Points : 275
    Points
    275
    Par défaut
    @Oliv
    J'applique tes conseils depuis l'origine (WaitIE et WaitDoc) mais cela ne m'empêche pas d'avoir des plantages aléatoires selon la réactivité de l'affichage des pages web

  4. #64
    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

    @Maume : Justement le but du tutoriel est d'éviter ce mode opératoire. AlainTech dans son message du 20/12/2013, 11h47, semble avoir donné une solution pour ces problèmes de décrochages.

    @Oliv : DOMContentLoaded est validé dès le chargement de la page et justement sans que les données ne soient entièrement chargées, http://ie.microsoft.com/TEStdrive/HT...d/Default.html


    Je n'ai pas pris le temps de faire plus ample recherche sur le problème.

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

  5. #65
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 19
    Points
    19
    Par défaut The document has disconnected from its clients
    D'habord merci pour ces explications qui sont plus claires et utilisables que tou ce que j'ai pu trouver en anglais sur le web.

    Mais avec mon deuxième page web intranet a automatiser, je rencontre un problème, au moment de
    "Set IEDoc = ie.Document"
    ce message d'erreur
    "Run Time Error
    Automation error
    The document has disconnected from its clients"

    Ca parle un peu, mais comment contourner.

    J'ai vu qu'on peut creer une reference a excel et la session retouné est la (ou un des) sessions excel

    Est-ce le me^me type de problèmatique qu'avec un pop up ?

  6. #66
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Bonjour metramo,

    Voir le message 52 de cette discussion.
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  7. #67
    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 heu
    bonjour a tous

    curt :
    pour récupérer le code source tu peut de servir d'une requête avec l'object (micosoft,xmlhttp) tu trouvera plein exemple dans mes discutions et même dans le forum contribuer (getcodesource) avec mon identifiant

    qwazerty :
    je viens de découvrir une chose bien étonnante je n'y avais jamais fait attention mais ca me parait important

    il se trouve que si je déclare l'object IE en late binding
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim ie as object 
    set ie=createobject("internet.application")
    il n'est plus nécessaire d'activer les références
    Microsoft internet control
    Microsoft HTML object Library
    il semblerait que ces api soit embarqué l'ors de la création de l'objet

    je viens de faire l'essai sur 10 fichiers Excel vierges et c'est sans exception aucun plantage
    utilisation de getelementby(tagname,id,classname)
    simulation de click ect......tout a fonctionné

    l'avais tu remarqué?
    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. #68
    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



    Bonjour,

    heu oui, comme dans cette discussion ?
    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)

  9. #69
    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

    Oui Patrick, c'est tout l'intérêt du late binding, c'est justement de ne pas avoir à activer les références, c'est d'ailleurs pour cette raison que le late binding résout les problèmes de versions.

    Je le dis d'ailleurs dans mon tutoriel

    II-B-1. Late Binding

    Si vous choisissez de ne pas utiliser le référencement, voici le type de code que vous utiliserez
    Toutefois, j'utilise souvent le early binding pour répondre au gens, car l’auto-complétion est un très bon moyen pour que les gens qui demande de l'aide puisse modifier à leur compte le code, et ainsi, je l'espère, mieux comprendre l'objet qu'ils manipulent.
    Et pour être honnête, l'auto-complétion m'arrange bien aussi car je ne connais pas par coeur toutes les propriétés et les fonctions des objets IE. Quand il s'agit de rechercher de nouvelles façon de faire, il est souvent très utile d'aller rechercher et tester des propriétés ou fonctions "nouvelles" et où les trouver si ce n'est dans l'explorateur d'objet VBA ou dans l'auto-complétion, tout deux liés au référencement.

    Bonne continuation

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

  10. #70
    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

    ayant basculer très vite avec le Microsoft xmlhttp pour des raison de velocité je n'ai pas lu jusque la

    10 coup de fouet pour moi
    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. #71
    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

    Bonjour,

    juste une observation à propos du chapitre IV-B-2. GetElementsByName :
    cette méthode n'est pas traitée dans cet excellent tutoriel car la méthode all renvoie les mêmes éléments.

    Pour des éléments ne possédant pas d'ID (zone de sélection, bouton image, …) mais disposant bien d'un nom (Name),
    sur une page tordue (dans le sens où même un form.submit ne déclenche rien) la méthode Document.all ne trouvant pas
    un bouton image, j'étais passé par une cascade de children de children …
    Hors en testant pour un autre élément, la méthode Document.GetElementsByName trouve bien ce bouton image !

    En résumé, si la méthode all ne trouve pas un élément par son nom, penser alors à la méthode GetElementsByName …

    _________________________________________________________________________________________________
    We are all very ignorant, what happens is that not all ignore the same things … (Albert Einstein)
    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)

  12. #72
    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

    Merci pour la précision Marc, je n'ai jamais rencontré ce problème.

    bonne soirée
    ++
    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

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

    Encore une fois merci pour ton tuto qui m'a bien servit pour débuter...
    En ce moment relecture pour corriger le dernier probléme persistant (sur un autre post)
    Mais en revoyant ici ton tuto et aprés l'aide de Pat et Marc et la tienne (ton pointage du gif entre autre) et l'idée du pointage d'un élément précis d'une page web je me demande si pas mal de questions posées ici à propos du chargement des pages/ probléme wait IE... et du décalage entre tout ne viennent pas justement de l'absence d'un pointage correct d'un élément (ce que Marc a souligné dans sa discussion...) pour attendre la fin du chargement de cet élèment avant de pouvoir continuer et qui dans le cas contraire fait que cela prend IE par défaut car dans ce cas les bonnes infos n'ont pas fini de charger par exemple...
    bonne journée

  14. #74
    Candidat au Club
    Homme Profil pro
    Production
    Inscrit en
    Janvier 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Production
    Secteur : Alimentation

    Informations forums :
    Inscription : Janvier 2015
    Messages : 2
    Points : 4
    Points
    4
    Par défaut Déploiement expression Espion VBA
    Bonjour,
    je souhaite suivre le tutoriel "Interaction avec Internet Explorer via VBA Excel" qui m'a l'air particulièrement bien fait.
    Mais, je bute sur le déploiement de l'expression espion sur la variable IE au chapitre "III-C-1. Comparaison de contenu".
    En effet quand je clique sur l'icone + devant IE dans la fenêtre "Espions", puis sur le + devant l'objet document, je n'ai rien qui s'affiche et donc je ne peux visualiser
    l'objet "all"
    Nom : Capture.JPG
Affichages : 1437
Taille : 102,9 Ko

    J'ai essayé les 3 méthodes de déclarations de variables et rien n'y fait.
    Merci pour votre aide afin que je puisse m'initier à la manipulation d'IE via le VBA.

  15. #75
    Membre actif
    Inscrit en
    Juillet 2013
    Messages
    772
    Détails du profil
    Informations forums :
    Inscription : Juillet 2013
    Messages : 772
    Points : 275
    Points
    275
    Par défaut
    Re-salut,

    En fait je t'avais conseillé de poser ta question plutôt ici car, là, il s'agit ici du fil correspondant aux remarques sur le tuto proprement dit. Par expérience tu auras plus de chance d'avoir une réponse là-bas.

    Toutefois, essaye déjà de remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IE.navigate "www.google.fr"
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IE.navigate "http://www.google.fr"
    Dans ma macro, je n'avais pas déclaré la variable IE ou plutôt j'avais mis sa déclaration en commentaire. Je ne sais plus pourquoi.

  16. #76
    Candidat au Club
    Homme Profil pro
    Production
    Inscrit en
    Janvier 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Production
    Secteur : Alimentation

    Informations forums :
    Inscription : Janvier 2015
    Messages : 2
    Points : 4
    Points
    4
    Par défaut
    Idem, l'objet document reste vide.
    Je vais suivre tes conseils et copier coller le message dans l'autre discussion.
    Merci

  17. #77
    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

    [Edit]

    Il suffisait de lire 2 messages plus haut et la question était posée.
    Marc-L faisait même remarqué dans la discussion proposé en lien, que document apparaissait vide en cas de déclaration tardive, VBA ne reconnaissant donc pas le contenu Document puisque qu'il ne comprend pas ce que contient Document.
    [/Edit]

    Cette remarque a été fait sur une autre discussion, le problème a semble t il était résolu en pointant document dans une variable (comme je le fait systématiquement plus loin dans le tuto).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim IEDoc as HTMLDocument
     
    IE.Navigate www.google.fr
    waitie ie
     
    iedoc = IE.document
    Au lieu d'espionner IE.Document, tu espionnes IEDoc.

    Dans l'absolu c'est exactement la même chose, sauf que visiblement VBA n'arrive pas à lire ou à interpréter le contenu de ie.document, alors qu'une fois pointé par une variable correctement typé (as HTMLDocument) ça ne lui pose plus de problème.
    Je n'ai pas d'explication certaine à ce phénomène, j'espère que cette solution te permettre de continuer.

    Bonne fin de journée

    ++
    Qwaz

    PS: Ta demande est bien au bon endroit car le problème va sans doute se poser à ceux qui utiliseront mon tuto.

    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

  18. #78
    Membre éclairé
    Homme Profil pro
    Constructeur ossature bois
    Inscrit en
    Mars 2014
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Constructeur ossature bois
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2014
    Messages : 897
    Points : 650
    Points
    650
    Par défaut Problème tuto
    Bonjour,

    Ne sachant pas si ce sujet pouvait être posté ici, j'ai ouvert une discussion :

    C'est ici

    En tout cas merci pour ce tuto.....Et merci de ta futur aide

    A+

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

    Merci de prendre en compte pour l'exercice avec la page google le code suivant
    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
    Option Explicit
    Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
     
    Sub RechercheVBAExcel()
    'Inscrire du texte dans une zone de texte ex: zone de recherche google
    '*********************************************************************
     
    'Déclaration de variables
     
    'Dim IE As New InternetExplorer 'en référencant
    Dim IE As Object 'en Late Binding
    Dim IEDoc As HTMLDocument
    Dim InputGoogleZoneTexte As HTMLInputElement
    'Dim InputGoogleBouton As HTMLInputElement
    Dim SelectGoogleBouton As HTMLSelectElement
     
     
        Set IE = CreateObject("internetexplorer.application") 'en Late Binding
     
        'Chargement d'une page Web
        IE.Navigate "https://www.google.fr/"
     
        'Affichage de la fenêtre IE
        IE.Visible = True
     
        'Attente chargement
        WaitIE IE
     
        'on pointe le membre du document
        Set IEDoc = IE.document
            WaitDoc IEDoc
     
        'on pointe notre zone de texte
        Set InputGoogleZoneTexte = IEDoc.all("gbqfq")
     
        'on définit le texte que l'on veut saisir dans zone de rech
        InputGoogleZoneTexte.Value = "VBA Excel"
        InputGoogleZoneTexte.FireEvent "OnPaste"
        'on pointe le bouton rech
        Set SelectGoogleBouton = IEDoc.getElementById("gbqfba") ' ou Set InputGoogleBouton = IEDoc.all("btnK")
     
        ' on simule un clic
        SelectGoogleBouton.Click
     
        'Attente la fin de chargement
        WaitIE IE
        WaitDoc IEDoc
     
        'libération de la variable
        Set IE = Nothing
        Set IEDoc = Nothing
     
        'Permet de quitter la page web
        'IE.Quit
     
     
    End Sub
    Sub WaitIE(IE As InternetExplorer)
    'Boucle tant que la page n'est pas totalement chargée
    '****************************************************
        Do Until IE.readyState = READYSTATE_COMPLETE
            DoEvents
        Loop
     
    End Sub
    Sub WaitDoc(doc As HTMLDocument)
      Do While Not doc.readyState = "complete"
        DoEvents
      Loop
    End Sub
    Le fait que la page modifie sont apparence modifie légérement le fonction dnas le sens ou si lors du clique la page ne s'est pas modifier, google ne lance pas la recherche. Pour forcer la modification de la page ici je force l'événement OnPaste.

    Bonne journée

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

  20. #80
    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



    Salut Stéphane !

    De mon côté en naviguant sur cette page Google avec IE comme avec Firefox,
    le résultat est automatiquement affiché sans même cliquer sur un bouton …

    Edit : je viens de tester ton code en ajoutant un stop après l'insertion du texte et là effectivement, le "clic" est nécessaire …

    Désolé SebPhyto, j'ai eu du mal à te suivre dans ta discussion !
    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)

Discussions similaires

  1. Manipulation d'Internet Explorer via VBA
    Par pegase33 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/04/2018, 09h49
  2. Probleme d'interaction avec Internet Explorer Via VBA
    Par ThaHardy dans le forum Access
    Réponses: 0
    Dernier message: 03/06/2015, 10h52
  3. Manipulation d'Internet Explorer via VBA
    Par jll13 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/01/2013, 19h24
  4. probleme Manipulation d'Internet Explorer via VBA
    Par casefayere dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/03/2012, 20h36

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