Bonjour à tous,
Je suis nouveau sur le forum, j'ai découvert le VBA il y a une semaine, et j'adore tout ce qu'on peut faire grâce à Virtual Basic. Je poste sur le forum car j'ai un problème, malgré avoir lu et relu des centaines de postes ainsi que tous les tutos qui pouvaient m’intéresser (je remercie Qwazerty pour son tuto qui m'a pratiquement tout appris), j'ai un souci avec le pilotage d'une page web. Je ne peux vous envoyer que des screenshoot de la page web ainsi que le code source, cependant vous ne pourrez vous y connecter, j'espère que cela sera suffisant.

Voilà mon problème, j'ai crée une macro qui me permet de me connecter sur la page web en question, jusque là tout va bien. Une fois sur ma page web je dois gérer des liste déroulantes, cependant malgré toutes mes tentatives je n'arrive pas à aller à la page suivante car j'ai l'impression que en plus de faire un choix dans ma liste, il faut que je lance une "requête" pour aller à la page suivante (même si elle a le même adressage), et une fois sur les pages suivantes, les listes déroulantes sont dépendantes les unes des autres, ce qui me fait penser qu'il faut là aussi faire une "requête" ou que alors mon problème vient de mes plug-in sur IE9.
Le problème exposé, je vais vous montrer un peu ce que j'ai essayé ainsi que les ressources dont vous avez besoin pour cerner le problème.
Voici la page d'accueil du site :
Pièce jointe 181987
Et le code source :
Nom : rtesource.jpg
Affichages : 366
Taille : 132,3 Ko

(En effet il y a un petit souci d'affichage sur la page d’accueil, le carré blanc, surement dû à un souci de player, qui est peut être également la cause de mon problème)

Donc, ce que j'ai essayé pour piloter cette page n'a pas fonctionné, j'ai essayé plusieurs trucs du style :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Set menuderoulant2 = IEDoc.all("services")
menuderoulant2.selectedIndex = 2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
IE.document.all("services").Focus
    IE.document.all("services").selectedIndex = 2
Egalement essayé en modifiant Value
Je n'est aucun soucis d"erreur de compilation" cependant une fois arrivé sur la page, ça m'ouvre ma liste déroulante, mais rien ne se passe, j'ai essayé également de simuler un click, ce qui n'a pas marché non plus.
J'ai placé des espions, qui me montrent que mon "menuderoulant2" pointe au bon endroit et qu'il prend la bonne valeur, mais je n’interagis pas avec la page web.
En regardant le code source, on peut voir que dans le <select de la liste déroulante il y a un "onchange" et un submit, surement qu'en pouvant les utiliser je pourrais résoudre mon problème, cependant je en sais pas comment faire, je n'ai pas trouvé de document sur les "onchange" sauf sur du javascript mais j'ai du mal à comprendre pour l'utiliser ensuite sur VBA.

(Edit :
J'ai essayé cela en utilisant le onchange et le submit
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Set menuderoulant2 = IEDoc.all("services")
menuderoulant2.onchange = IE.document.forms("searchSocieteCell").codeSap.Value = "0000016210"
IE.document.forms("searchSocieteCell").submit
Ca actualise la page comme je le veux cependant, ça n'a pas l'air de modifié la Value et donc de faire la bonne sélection. De plus j'ai beaucoup de mal à utiliser mes espions sur ce code, j'ai des "permission refusé", ou alors je ne retrouve pas la bonne valeur. J'ai également essayé de modifier la valeur de codeSap, cependant, lorsque je mets des espions je vois "permission refusé" en valeur, serait-ce possible que je ne sois pas autorisé à modifier la valeur de codeSap ?)

Merci de m'avoir lu, j'espère que vous pourrez m'apprendre quelque chose sur ces "onchange" ce qui me permettrait d'avancer grandement sur mon projet.
Même si vous n'avez pas forcément la solution, merci beaucoup car grâce à ce forum j'ai tout appris ce que je sais de excel, c'est génial vous faites un super boulot la communauté de developpez.net