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 :

cible.clik vba correct


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé

    Homme Profil pro
    Restaurateur
    Inscrit en
    Juin 2008
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Restaurateur
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2008
    Messages : 316
    Billets dans le blog
    1
    Par défaut cible.clik vba correct
    Bonjour,

    sur un site intranet dont le codage n'affiche quasi rien..
    en tout cas aucun lien visible,
    j'aimerai pouvoir cliquez en vba sur des liens qui existent sur cette page,
    la solution sendkey pour passer sur chaque bouton de la page et de cliquer
    me permet de le faire, mais est un peu long...
    lorsqu'avec TAB je passe sur les boutons de la page, dans la barre de tache d'internet explorer, je vois les liens sur lesquels je passe..
    ce sont des liens " javascript"...
    y a t il moyen en vba,
    d'executer ce lien puisque je peux l'ecrire dans mon code, ceci eviterai de passer par tous les boutons avec sendkey et d'envoyer directement, l'execution voulue.

    et quel serait le code du type
    cible clik "..........."
    mais je connais pas l'ecriture... adequat..

    Merci beaucoup !

    Julien

  2. #2
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 039
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 039
    Par défaut
    Salut
    Je ne connais pas trop le développement web, mais avec ton navigateur internet, tu peux afficher le code source de ta page, parfois le java script appel une autre page ou une fonction distante (.js) et ça, ça se trouve assez facilement en lisant le code. Les source sont repérée via le mot clef src=.
    Voila j'espère ne pas avoir dit trop de bêtises :p
    A++
    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

  3. #3
    Membre éclairé

    Homme Profil pro
    Restaurateur
    Inscrit en
    Juin 2008
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Restaurateur
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2008
    Messages : 316
    Billets dans le blog
    1
    Par défaut
    justement.. c'est ca le probleme,
    pour des raison de securiré, j'imagine,
    il n'y a rien dans le code source...

    quel est le code vba pour cliquer sur un lien dans explorer ...?

  4. #4
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 039
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 039
    Par défaut
    Salut
    Vous êtes plusieurs a rechercher des info sur Internet Explorer, je me suis donc penché un peu plus sur le problème.
    Voila un code qui permet de lancer IE, d'aller sur Google et de clicker sur le lien hypertext de Gmail.

    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 IEControl()
    Dim IE As New InternetExplorer
    Dim OneAll As HTMLObjectElement
     
    Dim URL As String
     
    URL = "http://www.google.fr"
     
    'Ouvre la page WEB
    IE.navigate URL
     
    Do While IE.readyState <> READYSTATE_COMPLETE
        DoEvents
    Loop
     
    For Each OneAll In IE.Document.Links
        If OneAll.outerText = "Gmail" Then
            IE.Document.Links(OneAll.uniqueID).Click
            Exit For
        End If
    Next
     
    'Affiche IE
    IE.Visible = True
     
    End Sub
    Pour avoir un max d'information il te faudra rajouter dans les références (Outils -> Références)
    Microsoft Internet Controls
    Microsoft HTML Object Library

    A++
    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. #5
    Membre éclairé

    Homme Profil pro
    Restaurateur
    Inscrit en
    Juin 2008
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Restaurateur
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2008
    Messages : 316
    Billets dans le blog
    1
    Par défaut
    merci pour ce code, c'est pas mal du tout !!!

    alors imagine que sur la page de google, par exemple,
    on envoie par sendkeys, dans le champs de recherche, un mot,
    et que par vba on veuille declancher le bouton recherche...?

    quel code utiliser dans ce cas...? car la ce n'est pas un lien hypertexte... t'es d'accord avec moi..


    Vive VBA !!!


    Julien

  6. #6
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 039
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 039
    Par défaut
    Salut
    Alors la, je suis pas chez moi, MAIS, en fait si j'ai bien compris l'objet document te permet d'accéder a un peu tout sur la page, via
    Si tu fais ta boucle For Each en remplacent document.links par document.all, tu passeras en plus des liens, les bouton, les champs texte et j'en passe surement. Ça c'est la 1er solution.

    La 2eme qui me parrait plus propre, mais que je n'ai pas trop en tête est de faire appelle directement au champs texte ou au bouton via sont nom... que tu trouves dans la source .... que tu as pas, mais ca doit y avoir moyen de biéser.Donc je pense que ca fonctionne comme ca
    Sur Google par exemple, le champs texte se nome "q", donc tu y fais appelle comme ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IE.Document.All("q").value = "Ce que je veux chercher"
    Ensuite pour le bouton, qui se nomme btnG
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IE.Document.All("btnG").Click
    Pour le bouton tu as une 3eme possibilité, celui de google est identifié dans le code comme étant de Type submit et tu peux envoyer directement submit au document ... mais je me souviens plus ou j'ai vu ca.

    Fais quelque recherche via Google et tu trouveras des infos sur le sujet, je viens d'essayer avec les mot clef IE.Document.all et tu en trouves déjà des caisse, y'a mm l'exemple de google en anglais... si j'avais su... y'a même d'autres méthodes pour les Links (Links(0).Target Links(0).Click)

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

  7. #7
    Membre éclairé

    Homme Profil pro
    Restaurateur
    Inscrit en
    Juin 2008
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Restaurateur
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2008
    Messages : 316
    Billets dans le blog
    1
    Par défaut
    Merci pour ces infos,
    demain, je bosse... et j'essaie de voir ça !
    ce qui m'ennuie c'est que je n'ai pas de code source...
    faudrait que je trouve comment le recuperer... puisque forcement, il existe...
    sinon, pas d'affichage de page !!

    Merci!

  8. #8
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 039
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 039
    Par défaut
    Salut je pense qu'une bonne solution serait de faire une boucle For each sur Document.all et d'inscrire dans ton tableau excel toute les info utiles contenu dans All

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For each ElementDoc in Document.all
       with Cells(rows.count,"A").End(Xlup).offset(1,0)
          .value = ElementDoc.Name
          .Offset(0,1) = ElementDoc.unique_Id
       end with
    next
    Tu peux avoir plein d'infos en mettant un espion sur ElementDoc, tu pourras ainsi savoir tout ce qu'il contient, tous ses paramètres et leur valeur.
    Attention d'ailleurs dans ma boucle au dessus, car si Name a une valeur null "", les éventuels autres infos stocké dans la colonne qui suive (ici Unique_Id) seront écrasées par l'entrée suivante.

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

Discussions similaires

  1. Fixer cellule cible dans VBA
    Par mederick dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 17/05/2018, 17h18
  2. [XL-2007] VBA- Correction erreur convertion en 20XX
    Par info009 dans le forum Excel
    Réponses: 1
    Dernier message: 10/07/2014, 17h06
  3. Fonction Valeur cible en VBA
    Par willyol3 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/09/2009, 14h11
  4. [VBA-E] Correction code opérations sur cellules
    Par anisr dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/03/2007, 21h52
  5. Réponses: 9
    Dernier message: 12/01/2007, 18h53

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