Utiliser un calculeur du Web avec VBA

francois1955

XLDnaute Junior
Bonjour,
Je voudrais créer une application en VBA qui effectue les tâches suivantes :

Ouvrir le site WEB suivant : Composition Dependent Combinatorial Analyzer
Remplir la première box (nommée 2) de la rubrique Shoe composition par la valeur de la cellule A1 d’une feuille Excel
Valider en cliquant sur le bouton Compute de la rubrique suivante (Player cards).
Récupérer le résultat de la box EV Overall de la rubrique suivante (Player Expected Value)
Enregistrer ce résultat dans la cellule B1 de la feuille Excel...

J’ai Windows Seven, IE 8.0.7600, Excel 97 et son VBA .
Voilà, si quelqu'un avait une idée sur la chose ou un bout de code, ce serait très apprécié.
Merci d'avance,
 
Dernière édition:

James007

XLDnaute Barbatruc
Re : Utiliser un calculeur du Web avec VBA

Bonjour François, :)

Un premier conseil est de bien sérier toutes les étapes et sous-étapes ...
et de suivre la politique des petits pas ... donc en te focalisant sur un seul sujet à la fois
donc avant tout :
1. Contrôler Internet Explorer pour ouvrir un site ...

As-tu essayé ton enregistreur de macros ?

A +
:)
 

francois1955

XLDnaute Junior
Re: Re : Utiliser un calculeur du Web avec VBA

Bonjour James,
Tu as raison, il faut être cartésien.
Oui, j'ai réussi à faire le premier pas:
***************************************************************
Const MY_URL As String = "http://www.bjstrat.net/cgi-bin/cdca_web.exe"
Dim IE As Object 'SHDocVw.InternetExplorer
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Navigate MY_URL
.Visible = True
End With
***************************************************
ça ouvre une fenêtre, ouf, je respire :)
J'essaierai le deuxième pas demain parce que comme l'a aussi dit Descartes, il faut être raisonnable ! :))
Un petit peu tous les jours, c'est une belle philosophie !
Plus sérieusement, je dois sortir...
Merci encore de ton accueil, de ta réponse et de tes conseils.
En attendant, si certains ont envie de faire les quelques pas avec moi, merci à eux aussi
Bon dimanche à tous.

PS @ James:
Waoww, je n'avais pas vu le post et le test de 8h05.
Tu n'es pas James Bond mais Lucky Luke !
Je suis moins rapide, je ne regarderai ce test que ce soir. Merci !!!!!!!!!
 
Dernière édition:

francois1955

XLDnaute Junior
Re: Re : Utiliser un calculeur du Web avec VBA

As-tu essayé ton enregistreur de macros ?

Bonjour James,
L'enregistreur de macro m'a été utile pour ouvrir la page web.
Malheureusement, il me semble que les interventions sur cette page web ne sont pas, elles, enregistrées. Il n'est donc pas facile de faire connaissance avec la syntaxe.
 
Dernière édition:

James007

XLDnaute Barbatruc
Re : Utiliser un calculeur du Web avec VBA

Bonjour François,

Le fichier test que je t'ai envoyé n'est qu'un point de départ indicatif de comment construire la navigation sur un site...

Il faut que tu le personnalises :
Avec le code source html de ta page, il te faut lister les interactions que tu as avec chacun des champs pour pouvoir ensuite les inclure dans ton code ...

A +
:)
 

francois1955

XLDnaute Junior
Re: Re : Utiliser un calculeur du Web avec VBA

Il faut que tu le personnalises :
Avec le code source html de ta page, il te faut lister les interactions que tu as avec chacun des champs...
Bonjour,
Oui j'ai bien compris que ton code n'était pas clé en main. J'ai donc regardé chacun de ses modules.
Et comme tu m'as conseillé de procéder pas à pas, j'ai bien personnalisé l'ouverture de la page et la coche de l'objet DAN de cette page.
Malheureusement l'exécution bogue entre les 2.
 
Dernière édition:

James007

XLDnaute Barbatruc
Re : Utiliser un calculeur du Web avec VBA

François,

Je vais préciser ma pensée, puisqu'il s'agit d'un calculateur :

1. Quelles sont les différentes données, dans l'ordre, que tu dois soumettre ?

2. Quel est le résultat que tu obtiens en retour ?

A +
:)
 

francois1955

XLDnaute Junior
Re: Re : Utiliser un calculeur du Web avec VBA

François,

Je vais préciser ma pensée, puisqu'il s'agit d'un calculateur :

1. Quelles sont les différentes données, dans l'ordre, que tu dois soumettre ?

2. Quel est le résultat que tu obtiens en retour ?

1) Remplir la première box (nommée 2 dans la page et txt2 dans le code source) de la rubrique Shoe composition par la valeur de la cellule A1 d’une feuille Excel
1') Valider en cliquant sur le bouton Compute de la rubrique suivante (Player cards).
2) Le résultat que j'attends en retour est celui fourni par la box EV Overall de la rubrique suivante (Player Expected Value) que j'aimerais rapatrier dans la cellule B1 de la feuille Excel...
Merci.
PS: James, j'ai voulu t'envoyer un message en MP mais c'est... full
 
Dernière édition:

James007

XLDnaute Barbatruc
Re : Utiliser un calculeur du Web avec VBA

Re,

Si dans ton code source, tu as comme identificateur unique txt2, as-tu essayé de tester le code suivant, pour soumettre ton input :
Code:
appIE.document.getElementById("txt2").Value = Sheet1.Range("A1").Value

A +
:)

P.S. Merci de m'avoir prévenu que ma boite était pleine ....
 

francois1955

XLDnaute Junior
Re: Re : Utiliser un calculeur du Web avec VBA

Re,
appIE.document.getElementById("txt2").Value = Sheet1.Range("A1").Value ....

Super, cela permet bien de renseigner ce que je voulais ! Merci James.
J'ai réussi aussi à valider ce changement et à procéder au calcul en cliquant sur le bouton Compute.
J'ai aussi trouvé pourquoi l'exécution buggait après l'ouverture de la page Web en restaurant boucle d'attente (Do While IE.Busy/Loop)
Il me reste à récupérer le résultat.
Je l'ai fait en "important" la page web dans une feuille Excel; le résultat se trouve alors dans la cellule L63 mais je trouve cette méthode vraiment lourde.
J'ai essayé de lire aussi avec InnerText ou InnerHtlm mais sans succès.
 

Pièces jointes

  • VBAWeb.xls
    48.5 KB · Affichages: 53
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 957
Membres
103 990
dernier inscrit
lamiadebz