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 :

Comment cliquer sur un bouton HTML sans ID


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2015
    Messages : 16
    Par défaut Comment cliquer sur un bouton HTML sans ID
    Bonjour à tous,

    J'essaye depuis une macro VBA de cliquer sur un lien hypertexte dans une page HTML mais celui-ci ne possède pas de ID:

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <a class="homeMenu" onclick="startBusyBox();this.style.cursor='wait' ;document.body.style.cursor='wait' ;" href="/CCCWeb/filterClientListFromDefineAsOf.do?do=clientMenu">

    j'ai essayé la methode suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set IEDoc= IE.document
    IEDoc.parentWindow.execScript "startBusyBox()", "Jscript"
    mais j'ai l'erreur suivante:
    Run-time error '-2147352319 (800201001)":

    Automation error
    Comment puis-je faire?

    Merci d'avance pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Pour information les instructions JavaScript ce termine toujours par [;].

    Tu ne donnes pas ce qu'il est véritablement utile pour te répondre ,

    En effet tu connais l'URL elle est écrite dans le href du <a>.

    Il est possible que ce lien soit contenu dans un <form>
    Dans ce ca tu affecte l'URL a la propriété action du formulaire et tu le sumith

    http://www.developpez.net/forums/d14...e/#post7893073
    Dernière modification par Invité ; 08/07/2015 à 18h01.

  3. #3
    Membre averti
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2015
    Messages : 16
    Par défaut
    Bonjour Rdurupt et merci pour ta réponse,

    Oui j'ai vu le lien dans la href mais je voulais tout de même cliquer sur le bouton pour que ça fasse plus "propre" plutôt que d'afficher la page web directement.

    Je joins le début du code HTML si ça peut aider: Nom : pageHtmlGce.png
Affichages : 2067
Taille : 68,0 Ko

    En ce qui concerne le javascript, j'ai adapté ce que j'ai trouvé sur le tutoriel DVP: http://qwazerty.developpez.com/tutor...a-excel/#LIV-D

    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
    VBA
    Sélectionnez
    Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
     
    Sub ScriptScienceActu()
    Dim IE As New InternetExplorer
    Dim IEDoc As HTMLDocument
    Dim yNumActu As Byte
     
       'Ouvre la page Web + Affiche IE + Attente
       IE.Navigate "http://www.science.gouv.fr/"
       IE.Visible = True
       WaitIE IE
     
       'On pointe le document
       Set IEDoc = IE.document
     
       'On boucle de 2 à 5
       For yNumActu = 2 To 5
          'On exécute le script showActu 'Attention à la Casse!!!! showActu
          IEDoc.parentWindow.execScript "showActu(" & yNumActu & ")", "JavaScript"
          'On laisse 2 secondes au lecteur
          Sleep 2000
       Next
     
       Set IE = Nothing
       Set IEDoc = Nothing
    End Sub
    Merci!

  4. #4
    Invité
    Invité(e)
    Par défaut
    La méthode OnClik ne fait pas autre chose au ce au je t'ai dis

    Moi dans ce cas de figure,je sauvegarde le script html dans un fichier je teste mon javascript dans le ficher, on s'affranchit vba !

  5. #5
    Membre averti
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2015
    Messages : 16
    Par défaut
    Ouais mais le problème c'est que je dois utiliser excel et VBA, je ne peux pas me servir de javascript...

  6. #6
    Invité
    Invité(e)
    Par défaut
    Tu as regardé le lien que je t'ai donné?
    C'est de l'Excel vba!

    Il y plus méthode pour injecter du javascript,elles dépendent de la configuration du code HTML, en revanche ce sera toujours le même script java. Donc tu divise le travail en 2 si ton script fonction dans un fichier HTML il te reste a évaluer comment le faire fonctionner en vba!
    Dernière modification par Invité ; 08/07/2015 à 22h47.

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/07/2011, 19h46
  2. Fermer la fenêtre des préférences sans cliquer sur le bouton Cancel
    Par Laurent.B dans le forum Eclipse Platform
    Réponses: 7
    Dernier message: 22/01/2010, 22h12
  3. Lancer une action struts sans cliquer sur un bouton submit
    Par cryosore94 dans le forum Struts 1
    Réponses: 10
    Dernier message: 22/03/2009, 16h08
  4. Faire un submit sans cliquer sur le bouton.
    Par babalastar dans le forum JSF
    Réponses: 3
    Dernier message: 27/03/2007, 10h02
  5. Réponses: 2
    Dernier message: 07/06/2006, 09h29

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