Envoyer des info excel sur internet

  • Initiateur de la discussion Thomas
  • Date de début
T

Thomas

Guest
Bonjour,

j'ai besoin de votre aide car je dois faire des saisies en rafal sur un outil que fonctionne sur le web, mais le problème c'est que j'ai plus d'une centaine de champs à rentrer.

j'aimerais créer une macro qui serait capable de reprendre les infos de chaque colonne pour les metres a un endroi precis.
et de reproduire cette enchainement pour chaque ligne.

j'ai HT un livre sur le VBA et je n'ai rien sur ce genre de fonction, mais je suis sur que cela peut ce faire car excel est capable d'envoyer des info sur des emulateurs alors pourquoi pas sur une page web?

d'avance merci.
 

MichelXld

XLDnaute Barbatruc
bonjour Thomas

ci joint un exemple qui permet de renseigner un champs dans une page web , puis de simuler le clic sur le bouton de recherche
il bien entendu possible de renseigner plusieurs champs à la volée , à condition de connaitre les index de saisie



Code:
Sub piloterPageWeb()
'michelxld le 23.01.2005
'nécéssite d'activer la référence Microsoft HTML Objects Library
'nécéssite d'activer la référence Microsoft Internet Controls

Dim i As Integer
Dim IE As InternetExplorer
Dim maPageHtml As HTMLDocument
Dim Helem As IHTMLElementCollection

Set IE = CreateObject('InternetExplorer.Application')
IE.Visible = True

IE.navigate '
Do Until IE.readyState = READYSTATE_COMPLETE
DoEvents
Loop 'attend la fin du chargement

Set maPageHtml = IE.document
Set Helem = maPageHtml.getElementsByTagName('input')

'exemple de boucle pour lister les objets type 'select'(listes de choix) dans la page
'Dim Hsel As IHTMLElementCollection
'Set Hsel = maPageHtml.getElementsByTagName('select')
'For i = 0 To Hsel.Length - 1
'MsgBox Hsel(i).getAttribute('name') & ' / ' & Hsel(i).getAttribute('value')
'Next i

'(boucle pour lister les objets type 'input' de la page)
'For i = 0 To Helem.Length - 1
'MsgBox Helem(i).getAttribute('name') & ' / ' & Helem(i).getAttribute('value')

'une autre possibilité pour déclencher le clic ( non utilisable dans cet exemple)
'If Helem(i).getAttribute('value') = 'texte du bouton' Then Helem(i).Click
'Next i

Helem(1).innerText = 'piloter page internet VB' 'champ de saisie mots clés
Helem(2).Click 'simulation clic

End Sub


pour connaitre les index de chaque champs il te suffit de boucler dessus et de regarder à quoi ils correspondent dans la page


Code:
'For i = 0 To Helem.Length - 1 
'MsgBox Helem(i).getAttribute('name') & ' / ' & Helem(i).getAttribute('value') 
'Next i


une autre solution pour faire une recherche sur Google depuis Excel

Lien supprimé



bonne soiree
Michel
 
T

Thomas

Guest
Merci pour ta reponse ainsi que pour le lien qui est tres formateur.

je pense qu'avec ses infos je suis sur la bonne voi pour créer ma premiere ligne de saisie.

cependant lorsque je vais lancer la macro les informations qui vont être envoyé vers le web seront envoyé en raffal et je pense que la vitesse d'execution de la macro sera plus rapide de l'enchainement des page web.

de ce fait je pense que je risque d'avoir un decalage avec les informations envoyé et l'endroi ou ils vont arrivé.

est il possible de faire un control à chaque changement de page afin qu'excel attende que celle ci soit bien afficher avant de poursuivre l'envoi de donné. si cela n'est pas possible est il possible de faire des temps de pause dans la macro du genre sendkey (tab nfois puis copier collé de b4 dans le web puis sendkey tab nfois puis entré puis pause de 15seconde (pour etre sur que la page soit dispo afin de reprendre la saisie))?

D'avance merci
 
T

Thomas

Guest
Bonjour le forum, je me permet de relancer mon sujet car je n'ai toujours pas de solution pour mon problème.

je sais que je dois utiliser 'sendkey' même si son utilisation reste du bricolage, mais dans mon cas je ne sais pas trop comment faire autrement,

je reviens vers vous pour savoir ce que je peux mettre apres 'sendkey' j'ai vu que ~ est = à entrée mais je ne sais pas comment faire espace, ni tab,... deplus quand j'aurais fais nfois tab comment lui dire de coller les info excel là où je serais dans ma page web.

je debut dans ce genre de manipulation et je n'ai quasiment rien trouvé dans le forum à ce sujet.

si toute fois quelqu'un connait un live à me conseiler (car tout les livres de vba excel que j'ai ne traite pas ce sujet)
 

MichelXld

XLDnaute Barbatruc
bonjour Thomas

à mon avis les sendKeys ne sont pas necessaires ( d'ailleurs il n'y en a pas dans l'exemple que je t'ai proposé)

par contre c'est difficile de t'aider si tu ne donnes pas plus d'infos :
quelles données Excel à placer dans les pages Web , à quoi ressemblent ces pages Web...etc...


pour la formation je n'ai pas de livre à te proposer , mais tu peux en autre utiliser la base de connaissances du forum Excel Downloads ( tout ce que je connais sur excel , je l'ai appris ici ) :
en utilisant les mots clés appropriés pour tes recherches , les 4 liens ci-dessous te permettont d'obtenir de nombreux exemples sur les macros , issus du forum XLD

https://www.excel-downloads.com/search/

Lien supprimé

Lien supprimé

Lien supprimé


tu peux aussi visiter ces pages ( il faut relancer une 2eme fois les liens , si un message d'erreur s'affiche )

Lien supprimé

Lien supprimé

https://www.excel-downloads.com/threads/ref-wiki-1-de-michelxld-generalites-excel.92356/


il y a aussi une zone de téléchargement par themes , avec de nombreux exemples prêt à l'emploi

https://www.excel-downloads.com/resources/



bonne soiree
MichelXld
 
T

Thomas

Guest
Merci Michel pour ta reponse,

je sais que je suis assé vague...

mais en fait je dois tester un logiciel qui marche sur le web, mais pour ce faire je dois créer des individus avec nom, prenom, date de naissance,...adresse,...

ce qui fait que je passe un temps fou rien qu'a la création des individus avant même de pouvoir les utiliser pour les tester.

toutes ces infos doivent être renségné sur différente page.

la raison pour laquel je pense que le senkey est nécéssaire c'est que le logiciel qui est sur le web n'est pas dans un language standar mais dans un language créé par ceux qui ont inventé le progiciel.

deplus je ne sais pas comment me deplacer d'une zone de saisie à une autre sans utiliser cette fonction.

mais à l'heure ou j'écris je ne suis pas encore allé voir tes liens donc peut être que la reponse à mes questions çi trouve.

dans tout les cas je vais y aller de suite mais si tu as des conseils à me donner sache qu'elles seront les bien venu.

merci encore pour votre aide à tous car ce forum est une reussite, je suis préssé d'être confirmé afin de contribuer aussi activement que tu le fais aujourd'hui.
Thomas
 
T

Thomas

Guest
Merci Michel pour ta reponse,

je sais que je suis assé vague...

mais en fait je dois tester un logiciel qui marche sur le web, mais pour ce faire je dois créer des individus avec nom, prenom, date de naissance,...adresse,...

ce qui fait que je passe un temps fou rien qu'a la création des individus avant même de pouvoir les utiliser pour les tester.

toutes ces infos doivent être renségné sur différente page.

la raison pour laquel je pense que le senkey est nécéssaire c'est que le logiciel qui est sur le web n'est pas dans un language standar mais dans un language créé par ceux qui ont inventé le progiciel.

deplus je ne sais pas comment me deplacer d'une zone de saisie à une autre sans utiliser cette fonction.

mais à l'heure ou j'écris je ne suis pas encore allé voir tes liens donc peut être que la reponse à mes questions çi trouve.

dans tout les cas je vais y aller de suite mais si tu as des conseils à me donner sache qu'elles seront les bien venu.

merci encore pour votre aide à tous car ce forum est une reussite, je suis préssé d'être confirmé afin de contribuer aussi activement que tu le fais aujourd'hui.
Thomas
 

Discussions similaires

Statistiques des forums

Discussions
312 668
Messages
2 090 739
Membres
104 644
dernier inscrit
MOLOKO67