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 :

Cocher une case sur un site web (sans id, name ou tagname)


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2016
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Janvier 2016
    Messages : 190
    Par défaut Cocher une case sur un site web (sans id, name ou tagname)
    Bonjour,

    Comment puis-je cocher une case dont le code se modifie comme cela une fois cochée ? :
    Avant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <li data-val="001" class=""><span><i></i></span><label>Ain</label></li>
    Après :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <li data-val="001" class="selected"><span><i></i></span><label>Ain</label></li>
    C'est pour cocher des localisations ici :
    http://www.emploi-territorial.fr/accueil/

    Merci pour votre aide.

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

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

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


    Bonjour !

    L'élément recherché est un sous-élément d'un autre …
    Donc remonter dans sa hiérarchie jusqu'à trouver un élément disposant d'un ID ou d'un nom.
    A partir de ce parent, pointer l'élément recherché en développement la hiérarchie via la propriété children par exemple
    ou tout autre méthode décrite dans le tutoriel Interaction avec Internet Explorer via VBA Excel

    ______________________________________________________________________________________________________
    Je suis Paris, Charlie, …

  3. #3
    Membre confirmé
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2016
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Janvier 2016
    Messages : 190
    Par défaut
    Bonjour Marc et merci pour ce retour rapide.

    J'ai essayé de cocher la case de l'ain (dans localisation) mais sans succès.
    Précision faite que je suis archi-débutante...

    Et je rencontre quelques soucis :

    1 - Une erreur "d'objet ou de variable non définie" ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Deptselect = IEDoc.getElementById("dept-select")
    Je suppose que la variable "Deptselect " est mal définie dans la déclaration de variable mais je ne voit pas en quoi la changer.

    2 - "data-val" est présent 2 fois dans l'ID "dept-select" et évidemment, c'est le second que dont j'ai besoin...
    Et je n'ai pas la moindre idée de la manière dont je dois procéder pour le sélectionner.


    Merci

    Voici le code :

    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
    Sub cap_territorial()
     
           Dim url As String, IE As Object
           Dim IEDoc As HTMLDocument
           Dim CocheDept As HTMLInputElement
           Dim Deptselect As HTMLGenericElement
     
           url = "http://www.emploi-territorial.fr/accueil/"
           Set IE = CreateObject("internetexplorer.application")
     
     
        With IE
            .Visible = True
            .Navigate url
            Do: DoEvents: Loop While .readystate <> 4 Or .busy
     
            'On pointe le bouton
            Set Deptselect = IEDoc.getElementById("dept-select")
            CocheDept = Deptselect.Children("data-val")
            Set CocheDept = CocheDept
     
            'On modifie son attribut
            CocheDept.setAttribute "selected", True
     
            'On valide le choix
            .document.getelementsbyname("btn_search")(0).Click
     
     
        End With
    End Sub

  4. #4
    Inactif  

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

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

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    heu ....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CocheDept = Deptselect.Children("data-val")
    heu!!.....quéquecéca!!!!
    ce ne serait pas plutot ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set CocheDept = Deptselect.Children(X)
    x represente son index dans la hiérarchie de l'arborescence
    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. #5
    Membre confirmé
    Femme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2016
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 43
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Janvier 2016
    Messages : 190
    Par défaut
    Oh Patrick, qu'est-ce que je ferais sans toi ???

    Merci

  6. #6
    Inactif  

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

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

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut
    mais c'est tellement plus facile comme 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
    Sub cap_territorial()
        Dim url As String, IE As Object
        Dim IEDoc As Object
        Dim CocheDept As Object
        Dim Deptselect As Object
        url = "http://www.emploi-territorial.fr/accueil/"
        Set IE = CreateObject("internetexplorer.application")
     
        With IE
            .Visible = True
            .Navigate url
            Do: DoEvents: Loop While .readystate <> 4
            Set IEDoc = IE.document
    'LES METIERS
            Set myselect1 = IEDoc.getelementsbytagname("select")(0)
            myselect1.Value = "11"
            'ou comme ca
            'myselect1.selectedIndex = 2 ' je selectionne le 3 eme item  "Action économique et développement local"
    'LES DEPARTEMENTS
            Set myselect2 = IEDoc.getelementsbytagname("select")(1)
            myselect2.Value = "083"    'je selectionne le var LA VALEUR DE L ITEM
            'ou comme ca
    '        myselect2.selectedIndex = 103    ' le 103 eme item de la liste c'est le var
     
            ''On pointe le bouton et On valide le choix
            .document.getelementsbyname("btn_search")(0).Click
     
        End With
    End Sub
    regarde bien la capture aprend a faire la différence entre l'item et la valeur de l'item
    Nom : Capture.JPG
Affichages : 229
Taille : 52,6 Ko

    sur ce
    bonne nuit moi aller reposer les yeux car moi avoir des forumatrice amatrice ah!!!! gagaga!!!!!!
    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

Discussions similaires

  1. mettre une animation flash sur un site web ?
    Par The big jo dans le forum Intégration
    Réponses: 1
    Dernier message: 18/12/2008, 19h42
  2. Une autre manière de naviguer sur un site web
    Par Darkone dans le forum Langage
    Réponses: 5
    Dernier message: 02/06/2008, 15h03
  3. cocher une case en fonction des valeurs sur plusieurs plages
    Par flyfranky dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 15/11/2007, 10h20
  4. Réponses: 3
    Dernier message: 23/03/2007, 07h54
  5. Réponses: 4
    Dernier message: 07/06/2006, 14h23

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