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 :

Manipulation d'Internet Explorer via VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    PMO
    Inscrit en
    Août 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : PMO
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2015
    Messages : 66
    Par défaut Manipulation d'Internet Explorer via VBA
    Bonjour,
    Ce tuto ne me quitte pas ! Bien que n'ayant que peu d 'expérience en HTML et VBA je me suis quand même lancé sur des applications vba simples mais avec un certain succès.

    par contre je me suis trouvé face à un mur car je cherche à récupérer des valeurs d'une liste mais je n'arrive pas à pointer sur l'objet qui contient la liste.

    Je pense que cela vient du fait que la page HTML est divisée en plusieurs parties puisque très tôt dans l'arborescence j'ai des balises frameset et Frame
    A chacune de ces balises il y a une nouvelle arborescence qui recommence par <html> <head> <frameset>
    Quand je suis sous vba je ne retrouve que la première arborescence, dès que j'essaye d'aller plus en profondeur, je me suis rendu compte que c'était comme si je remontais à la racine.

    Donc de façon plus générale, je ne sais pas gérer dès qu'il y a plusieurs frame sur ma page html, il y a t-il un moyen de les différencier ?

    Merci

  2. #2
    Membre averti
    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2014
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2014
    Messages : 41
    Par défaut
    Bonjour,
    Est-il possible d'avoir l'adresse url de la page dans laquelle tu cherches à récupérer des éléments ou son code source si ce n'est pas possible ?
    Précise également quelle est la liste qui t'intéresse.

  3. #3
    Membre confirmé
    Homme Profil pro
    PMO
    Inscrit en
    Août 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : PMO
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2015
    Messages : 66
    Par défaut
    Bonjour,
    Voici le code html. la source est sur un intranet.
    Je ne sais pas si cela a une incidence mais vba gère Internet Explorer mais pour une raison que j'ignore avec l'IE du boulot l'outil: outil de développement (F12) n'est pas accessible, du coup je passe par Mozzila, donc le code joint est le code HTML sur Mozzila
    Les valeurs à copier sont celles qui sont inclues dans "listIndiv"
    Et... Merci de m'avoir répondu...
    Images attachées Images attachées  

  4. #4
    Membre averti
    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2014
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2014
    Messages : 41
    Par défaut
    Je vais te donner une piste, mais je n'ai pas le temps de la tester...
    Il s'agit d'une page HTML qui inclut d'autres pages HTML dans des frames.
    C'est une structure un peu complexe qui faisait partie autrefois d'HTML et qui ne fait pas partie de XHTML.
    Il semblerait qu'on puisse l'utiliser à nouveau dans HTML5, mais pour ma part je n'aime pas ces imbrications...
    Un frame ou iframe est un document inséré dans un autre, souvent issu d'un fichier extérieur comme ça semble être le cas dans ton exemple.
    Pour accéder à un élément du document (dans ton cas listIndiv), il faut procéder par étape :
    - d'abord accéder à l'iframe ;
    - puis au document contenu ;
    - et enfin à l'élément désiré qu'il reste à utiliser comme on le souhaite.
    (il faudra peut-être compliquer en accédant à l'iframe dans l'iframe... c'est à essayer)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Set htmlSelectElem= window.frames["ApplicationDroite"].document.getElementsByName("listIndiv")
    ' Là il s'agit d'une liste, donc on va récupérer les éléments de la liste par leur tag "option"
    Set htmlTagCol = htmlSelectElem.getElementsByTagName("option")
    ' Et, par exemple, on va récupérer l'élément sélectionné, mais on peut faire autre chose aussi
    For Each htmlTagItem In htmlTagCol
      If htmlTagItem.getAttribute("selected") = "selected" Then
            .......
        Exit For
      End If
    Next

  5. #5
    Membre confirmé
    Homme Profil pro
    PMO
    Inscrit en
    Août 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : PMO
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2015
    Messages : 66
    Par défaut
    Merci Philippe pour ta piste, c'était vraiment la bonne
    Donc on peut avoir des éléments dnas des frame de frames !
    Ma première erreur était de ne pas lire correctement le tuto
    Ma seconde erreur était d'avoir ma déclarer ma variable Généric2, ilf fallait simplement en Objet
    Voici mon bout de code
    Images attachées Images attachées  

Discussions similaires

  1. [Article] Manipulation d'Internet Explorer via VBA
    Par Qwazerty dans le forum Contribuez
    Réponses: 116
    Dernier message: 13/02/2020, 15h47
  2. Manipulation d'Internet Explorer via VBA
    Par pegase33 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/04/2018, 09h49
  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