Remplissage automatique de formulaire

Fermé
liliputienne Messages postés 10 Date d'inscription mercredi 30 juin 2004 Statut Membre Dernière intervention 1 septembre 2004 - 30 août 2004 à 20:08
 déon - 22 août 2012 à 12:15
Bonjour à tous !
J'ai créé un tableur excel et je souhaiterai à partir de ce tableur récupérer des données sur internet. Je n'ai accès à ces données qu'en naviguant sur différentes pages et en remplissant un formulaire (ce sont des données bancaires).
J'aimerais savoir s'il est possible de créer un programme (type vbscript ou autre), capable de remplir le formulaire et de faire le chemin tout seul, et executable par une macro.
merci de vos réponses !

5 réponses

JSS Messages postés 3745 Date d'inscription jeudi 22 avril 2004 Statut Contributeur Dernière intervention 17 décembre 2004 32
31 août 2004 à 13:58
Bonjour,

voilà une piste :

utiliser le control internet explorer de vb ...

bon courage !

JSS
0
liliputienne Messages postés 10 Date d'inscription mercredi 30 juin 2004 Statut Membre Dernière intervention 1 septembre 2004
31 août 2004 à 21:28
salut
excuse moi si je suis un boulet, mais tu peux être plus clair ??? (pour info je ne connais que vba pour excel)
en fait, est-il possible via vba d'accéder aux objets internet explorer (formulaires, champ de formulaire) ?
ou faut il faire un executable comme intermédiaire et à ce moment en quel langage ?
merci
0
Bonjour,

petit exemple pas très compliqué pour une liliputienne :)

Sous Excel :

/[Alt F11]/Outils/Références...

Cocher : Microsoft Internet Control

*************************************

Public Function NetworkTools() As String

Dim Page As New InternetExplorer

Dim Boucle, Corde, Dum As Integer
Dim Feuille, Plage As String

On Error Resume Next

'Ouverture du navigateur
Page.navigate "http://www.network-tools.com"
Page.Visible = True
Delai (1000) ' Fonction simple de délai

'Positionnement du curseur
For Boucle = 1 To 19
SendKeys "{TAB}", True
Delai (50)
Next Boucle

Delai (20)
SendKeys "{HOME}", True: Delai (50)
SendKeys "+{END}", True: Delai (44)
SendKeys "^c", True: Delai (50)
SendKeys "101.010.101.010", True: Delai (100)
Page.Visible = False
Page.Quit

'Activation du classeur
Workbooks("MonClasseur.xls").Activate

End Function


Lupin
0
liliputienne Messages postés 10 Date d'inscription mercredi 30 juin 2004 Statut Membre Dernière intervention 1 septembre 2004
31 août 2004 à 22:33
bon bah merci
0
Utilisateur anonyme
1 sept. 2004 à 01:17
re :

... j'ai copié/coller une fonction que j'utilise courrament en
y retranchant du code, il y a trop de déclaration...

Or bien que lancé, je ne sais si tu es à l'aise sous vba ? Alors je nettoie et ça donne:

Public Function NetworkTools() As String

Dim Page As New InternetExplorer

'Ouverture du navigateur
Page.navigate "http://www.network-tools.com"
Page.Visible = True
Delai (1000) ' Fonction simple de délai

'Positionnement du curseur
For Boucle = 1 To 19
SendKeys "{TAB}", True
Delai (50)
Next Boucle

Delai (20)
SendKeys "{HOME}", True: Delai (50)
SendKeys "+{END}", True: Delai (44)
SendKeys "^c", True: Delai (50)
SendKeys "101.010.101.010", True: Delai (100)
Page.Visible = False
Page.Quit

'Activation du classeur
Workbooks("MonClasseur.xls").Activate

End Function

Function Delai(Boucle As Integer) As Boolean

Dim Cmpt1, Cmpt2 As Integer
Dim dum As String

For Cmpt1 = 1 To Boucle
For Cmpt2 = 1 To Boucle
dum = "Boucle"
DoEvents
Next Cmpt2
Next Cmpt1

End Function


Lupin

~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~
0
liliputienne Messages postés 10 Date d'inscription mercredi 30 juin 2004 Statut Membre Dernière intervention 1 septembre 2004
1 sept. 2004 à 08:57
oki doki
juste, j'ai pas compris ce que c'était la fonction de delai...
(pas facher moi, je débute...)
mais bon, déjà avec tout ça j'ai matière à travailler
merci pour ton aide
0
Utilisateur anonyme > liliputienne Messages postés 10 Date d'inscription mercredi 30 juin 2004 Statut Membre Dernière intervention 1 septembre 2004
1 sept. 2004 à 15:07
Bonjour,

tu pourras constater que cette fonction utilise l'instruction
"SendKeys", or en temps machine, envoyer 2 clé successive
par cette instruction est trop rapide, la deuxième risque de
ne pas être interprèté, d'où le délai.

Lupin

~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~
0
Hystic > Utilisateur anonyme
16 juin 2008 à 18:11
Une fonction delai toute simple peut être , mais impossible de mettre la main dessus ;-)
serai t'il possible d'en poster une toute faites
Merci d'avance
0
Bonjour,

"Sous Excel :

/[Alt F11]/Outils/Références...

Cocher : Microsoft Internet Control "

Je ne trouve pas cette option a cocher, j'ai une version Excel 2007, est ce que quelqu'un pourrais m'aider , (désolé suis novice en la matière j'apprends :) )
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tuto ici

http://qwazerty.developpez.com/tutoriels/vba/ie-et-vba-excel/

Merci à lui...
0