begin process at 2012 02 17 03:00:23
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

Sélectionner dans une liste déroulante sur le web à partir de vb


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Sélectionner dans une liste déroulante sur le web à partir de vb

jeudi 23 mars 2006 à 22:33:23 | Sélectionner dans une liste déroulante sur le web à partir de vb

lanannie

Bonjour,

Je cherche comment sélectionner un élément dans une liste déroulante qui se trouve sur une page web avec des frames à partir de VB. Je suis capable d'ouvrir ma page et de cliquer sur un bouton sur celle-ci mais je n'ai pas trouvé comment manipuler une liste déroulante.

Quelqu'un peut m'aider???

Merci!

Lanannie
samedi 25 mars 2006 à 01:40:42 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

rvblog

Membre Club
Salut Lanannie,

à partir de VB ou de VBScript?
Quand tu dis "de cliquer sur un bouton", envoie de touches clavier ou appel du CMD_Click?
si t'es en VBScript, il me semble que la sélection d'une combo ou d'une liste, c'est la propriété ListIndex (de 0 à ListCount-1, et la valeur -1 si pas de selection), elle est en lecture/ecriture.

à+,

rvblogn
Je veux ton bien... et je l'aurais

samedi 25 mars 2006 à 19:21:11 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

lanannie

Allo,

Merci de prêter attention à mon problème.

J'ai fait une application en VB6 qui navigue automatiquement sur un site web. Mais voilà, je suis capable d'ouvrir la page, de mettre mon user et mon password, de cliquer sur le bouton ok, de cliquer sur un lien mais je ne suis pas capable de sélectionner un élément d'une liste déroulante. Le tout doit se faire automatiquement sans l'intervention d'un usager.

Merci à l'avance...

Lanannie
samedi 25 mars 2006 à 22:45:01 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

rvblog

Membre Club
C'est encore moi,

je vais encore t'en demander, mais c'est parce que je vois que personne n'a l'air de répondre, pourtant ce n'est pas le genre de problème rare (j'ai pas dit pas compliqué). Donc, je pense qu'il te faut être encore plus explicite.
Pilotes-tu Internet Explorer (via AUTOMATION, ou autre) ou un navigateur exotique (genre FireFox, Opera ou NetScape, ou autres) et si c'est le cas, avec quelle méthode (API, sendKeys,...), ou utilises-tu un composant de Navigation (genre WebBrowser), ou suis-je devenu très vieux parce que c'est carrément autre chose? :)

tu vois, c'est pas pour t'embêter, mais des raisons au problème tel que tu le décris, et les solutions adaptées à celles que tu utilises, il y en a des tonnes,

à+, de te relire,

rvblogn
Je veux ton bien... et je l'aurais

samedi 25 mars 2006 à 23:18:38 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

lanannie

Allo,
 
Ça me fait plaisir de te donner plus de détails!

Voici des exemples de procédures d'accès à certains contrôles de ma page web déclarées dans un module de classe:

Dim WithEvents IntExp As InternetExplorer  'pour gérer les événement IE
Dim WithEvents WebDoc As HTMLDocument  'pour gérer les événement IE.Document

' Pour cliquer sur un bouton
Public Sub ClickButton(ByVal argButtonName As String)
    On Error Resume Next
    WebDoc.All(argButtonName).Click
End Sub

' Pour remplir un champ comme une textbox
Public Sub FillField(ByVal argFieldName As String, ByVal argValue As String)
    On Error Resume Next
    WebDoc.All(argFieldName).value = argValue
End Sub

' Pour trouver une image et cliquer dessus
Public Sub ClickImage(ByVal argFrame As String, ByVal argImage As String)
    On Error Resume Next
    Dim image As HTMLImg
   
    For Each image In WebDoc.frames(CStr(argFrame)).document.images
        If Right(image.src, Len(argImage)) = argImage Then
            image.Click
            GoTo fin
        End If
    Next image
fin:
End Sub

' Pour trouver un lien et cliquer dessus
Public Sub ClickLien(ByVal argFrame As String, ByVal argLien As String)
    On Error Resume Next
    Dim lien As HTMLLinkElement
   
    For Each lien In WebDoc.frames(CStr(argFrame)).document.links
        If Right(lien, Len(argLien)) = argLien Then
            lien.Click
            GoTo fin
        End If
    Next lien
fin:
End Sub

Voici maintenant comment j'appelle mes procédures dans un module standard:

Sub Main()
      Dim IntExp As New IntExp

      With IntExp
            ...
            .FillField "Login", "UserName"
            .ClickButton "NomBouton"
            .ClickLien "NomFrame", "CheminLien"
            .ClickImage "NomFrame", "NomImage"
            ....
        End With
End Sub

Alors voilà, je veux choisir dans une liste déroulante qui se trouve dans un frame de ma page web.

J'espère que j'ai réussi à bien t'expliquer...

Merci encore!

Lanannie

dimanche 26 mars 2006 à 00:19:35 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

rvblog

Membre Club
Oui j'écoute :)

parfait! j'adore qu'on me parle comme ça!

dans ton WebDoc (de type HTMLDocument), tu dois trouver un .body (de type HTMLBody), et lui-même contient un .children (de type DispHTMLElementCollection), que tu peux donc énumérer, jusqu'à trouver un ou des .item (de type HTMLSelectElement).

Tu dois pouvoir solliciter la méthode .Click sur ces items là (de type HTMLSelectElement). Pour ceux là seulement, on est d'accord!

Bon, je n'ai pas ta page HTML, donc je ne connais pas exactement la hiérarchie body/frames/forms..., et donc je donne la structure générique (j'ai lu ton exemple, mais je ne l'ai pas reproduit). Ensuite, pour la liste déroulante, je pars de l'hypothèse que c'est une balise SELECT (mais ça pourrait être un activex MS, combobox, etc, que tu trouverais dans cette même collection, de type HTMLObjectElement).

Au fait, je trouve que ta méthode est douce, agréable à penser, et ...
diablement machiavélique ! S'il savait l'IE, ce que tu lui fait de l'intérieur !!!

rvblogn
Je veux ton bien... et je l'aurais

dimanche 26 mars 2006 à 00:36:06 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

rvblog

Membre Club
et évidemment, pris par l'émotion, j'en oublie :

un .item (de type HTMLSelectElement), contient lui-même un .children (de type HTMLOptionElement), dont tu peux lire le .index (démarre à 0), mettre le .Selected (à True), et solliciter le .Click!

à+

rvblogn
Je veux ton bien... et je l'aurais

dimanche 26 mars 2006 à 03:37:09 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

lanannie

Super !
Je teste ça et je t'en redonne des nouvelles!

Merci!
A+

Lanannie
dimanche 26 mars 2006 à 16:25:54 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

lanannie

Réponse acceptée !

Re-Bonjour,

Voilà ça fonctionne!!! Voici ma procédure:

Public Sub FormListe(ByVal argFrame As String, ByVal argListe As String, ByVal argId As String)
    On Error Resume Next
    Dim liste As HTMLSelectElement
       
    For Each liste In WebDoc.frames(CStr(argFrame)).document.All(CStr(argListe))
        If liste.id = CStr(argId) Then
            WebDoc.frames(CStr(argFrame)).document.All(CStr(argListe)).selectedIndex = liste.Options
            GoTo fin
        End If
    Next liste
fin:
End Sub

Tu m'as donné le bon type de variable à utiliser (HTMLSelectElement).
Merci pour tout!

A+

Lanannie

dimanche 26 mars 2006 à 21:16:55 | Re : Sélectionner dans une liste déroulante sur le web à partir de vb

rvblog

Membre Club
Bien content pour toi,
à+

rvblogn
Je veux ton bien... et je l'aurais


1 2

Cette discussion est classée dans : web, partir, liste, déroulante, sélectionner


Répondre à ce message

Sujets en rapport avec ce message

VBA - Sélectionner une valeur dans liste déroulante [ par Coudrak ] Comment puis-je dire de sélectionner la valeur n°x dans ma liste déroulante sous Access, en VBA donc..ListeIndex me donne celui qui est sélectionner, Liste déroulante à partir d'un fichier Excel [ par DeepXtaZy ] Bonjour,Je ne sais pas si je poste bien sur le bon forum...Je souhaiterais créer une liste déroulant sous word 97 à partir d'un fichier Excel 97 (Si c [access]sélectionner une ligne dans une liste déroulante [ par bractar ] Bonjour,J'aimerais qu'au chargement de mon formulaire, un champ d'une liste déroulante soit directement sélectionnée.je sais que pour une liste normal Filtrer une liste déroulante à partir d'une autre liste [ par tarbais ] Bonjour,Je voufrais dans un formulaire [saisie Z] après avoir selectionné dans ue liste déroulante (contrôle[Nom X]) filter les enregistrements dans u créer une liste déroulante dans excel à partir d'une base de donnée access [ par superguigui974 ] bonjour, j'aimerai creer une liste déroulante à partir d'une base de donnée access.la liste de donnée devrait proposé les éléments de ma table d'acces Liste déroulante sous Word [ par neorasupa ] Bonsoir à tous,Je suis actuellement en train de faire un formulaire "simple" (champs "Texte" et non "TextBox", "Listedéroulante" et non "Combobox") so compléter une zone de liste déroulante [ par mbricolo ] Bonjour,j'ai dans un fomulaire, une zone de liste déroulante, mais je voudrais que sur le click s'ouvre un autre formulaire en remplacement du déroula Liste déroulante dans un UserForm [ par Dominike ] Bonsoir à tous !J'avance à petits pas, mais souvent confronté à de petits soucis.Ce soir, j'ai créé un UserForm avec une liste déroulante alimenté trè Etat Access [ par heliosdiag ] J'ai un champ de liste déroulante de n° de projets.J'ai créé plusieurs états avec des regroupements des tris : pas de pbMais je n'arrive pas a visuali connexion à une bd access sur le web à partir d'une application vb [ par zenati_jaouad01 ] Je voudrais savoir si on peut se connecter à une base de données access hebergée dans le web à partir d'une application vb. si oui comment ?merci d'av


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales