Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2871 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA]ouvrir un page internet et inscrire un code pour ouvrir undossier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VBA]ouvrir un page internet et inscrire un code pour ouvrir undossier

n°1912395
foxley_gra​vity
Posté le 06-08-2009 à 14:54:10  profilanswer
 

Bonjour  
 
Je suis débutant  ^^et ....
Je dois allez chercher un dossier dans un serveur grâce une macro ....
 
je dois faire à  l'aide d'un bouton à  ouvrir  la page internet ... inscrire un nom d'utilisateur , et un  code , puis une fois dedans le serveur allez chercher le contenu d'un  dossier ...
 
Pour l'instant j'arrive juste à ouvrir la page internet ...( ce qui est deja pas mal :p ^^)
 

Code :
  1. Private Sub CommandButton4_Click()
  2.  
  3. 'L'utilisateur vient sélectionner le répertoire
  4.  
  5. Dim a
  6. a = Shell("C:\Program Files\Internet Explorer\iexplore.exe http://controld.gicm.net/bmc-ctd-w [...] ndow", vbNormalFocus)
  7.  
  8. End Sub


 
merci de votre aide  
cdt

mood
Publicité
Posté le 06-08-2009 à 14:54:10  profilanswer
 

n°1912408
Deamon
Posté le 06-08-2009 à 15:25:00  profilanswer
 

Il y a sendKeys pour taper du texte mais faut arriver à mettre le focus là où il faut et ça j'ai aucune idée sur comment faire...

n°1912412
_xme_
Posté le 06-08-2009 à 15:28:45  profilanswer
 

euh pk ne pas essayer plutot de créer un objet IE?
du genre :

Code :
  1. Set ie = CreateObject("InternetExplorer.Application" )
  2. ie.Navigate ("tonadresse.html" )
  3. Do While ie.Busy
  4. WScript.Sleep (100)
  5. Loop


du coup plus de difficulté pour s'y adresser non?

n°1912424
foxley_gra​vity
Posté le 06-08-2009 à 15:38:36  profilanswer
 

Je suis pas un beau gosse de vb :(  
 
un objet ie ?  
dans quel mesure cela facile le truc ?
comment faire pour entrer le nom de l'utilisateur et le code ?
puis pour continuer la recherche sur le serveur ?
 
merci

n°1912429
foxley_gra​vity
Posté le 06-08-2009 à 15:47:48  profilanswer
 

Code :
  1. J'ai trouvais un truc mais ca marche pas ...
  2.  
  3. Sub l()
  4.  
  5. Dim inet
  6. Set inet = CreateObject("InternetExplorer.Application" )
  7. inet.Navigate ("http://forum.hardware.fr/hardwarefr/Programmation/sujet-47024-1.htm" )
  8. inet.Visible = True
  9. Do While Not inet.ReadyState = 4
  10.    
  11. Loop
  12. inet.Document.hop.contenu.Value = "Post créé automatiquement"
  13. inet.Document.hop.submit.Click
  14.  
  15.  
  16. End Sub

 
 

n°1912431
_xme_
Posté le 06-08-2009 à 15:52:51  profilanswer
 

L'interet d'avoir un objet Ie c'est de passer outre le besoin du focus ;)
Dès que tu veux t'adresser à ta page internet tu ferra objetie. quelque chose
Je ne connais pas trop cette objet donc faut chercher et en ce moment j'ai pas trop le temps
objetie.Document.jesaispasquoi
Devrai te permettre d'obtenir tout ce que tu veux
Il faudrait cherche de la doc sur l'objet
Je ne sais pas si c'est toi qui gère le site que tu vises mais en gros je crois qu'il te suffit de faire des ie.Document.leurid. Si tu ne sais pas ce qu'est un id en html je te renvoie au cours du siteduzero qui sont très bien fait ;)
 
Il me semble que ce site réponds à tes besoins
http://jacxl.free.fr/cours_xl/cours_xl_jac.html#mdp
 
sinon google  ;)

n°1912465
foxley_gra​vity
Posté le 06-08-2009 à 16:21:30  profilanswer
 

re merci bcp pour le sit mais j'arrive pas à rentrer toto et zaza sur le sit ud mec :( , dou cela provient ?
 
ie.Navigate ("http://jacxl.free.fr/cours_xl/mdp.html" )  
ie.visible=true  
Do While ie.Busy  
wscript.sleep (100)  
Loop  
wscript.sleep (2000)  
Set dct = ie.Document.parentwindow.frames.Item(1).frames.Item(1).document  
dct.frm.user_name.value="toto"  
dct.frm.pass.value="zaza"  
dct.frm.submit  

n°1912545
_xme_
Posté le 06-08-2009 à 17:54:47  profilanswer
 

J'ai le choix entre:
- un gros coup de pas de moule
- me demander si tu ne vaux même pas la corde pour te pendre  :sol:  
 
mon code

Code :
  1. [#ff0000]Set ie = CreateObject("internetexplorer.application" ) [/#ff0000]
  2. ie.Navigate ("http://jacxl.free.fr/cours_xl/mdp.html" )  
  3. ie.visible=true  
  4. Do While ie.Busy  
  5.     wscript.sleep (100)  
  6. Loop  
  7. wscript.sleep (2000)  
  8. Set dct = ie.Document.parentwindow.frames.Item(1).frames.Item(1).document  
  9. dct.frm.user_name.value="toto"  
  10. dct.frm.pass.value="zaza"  
  11. dct.frm.submit


fonctionne très bien chez moi
Donc si comme je le présume tu as oublié le  

Code :
  1. Set ie = CreateObject("internetexplorer.application" )


T'as le droit à mon pied dtc :D
Sinon va falloir me présicer ton erreur  :??:

n°1912675
foxley_gra​vity
Posté le 07-08-2009 à 09:51:22  profilanswer
 

non je l'avais mis lol quand même :p  
Il m'affiche une erreur  
 
membre introuvable (j'ai enlevé l'histoire si occupé attendre ^^ il aimait pas lol )
 
Set dct = ie.document.parentwindow.frames.Item(1).frames.Item(1).document
 
 
merci de maide lol  
Au faite je m'avance deja sur les questions ... si ca marche,  je l'espere , c'est uniquement pour des disposition super classique non ?  
ca marchera pour le sit ou je dois aller ?  
( cf 1er post en bleu )  
 
merci , ( j'attend un peu pour mon coup de pied , ma corde , mon flingue...etc) ^^

n°1912677
_xme_
Posté le 07-08-2009 à 09:56:21  profilanswer
 

Alors je ne comprends plus grand chose
Si tu copie exactement ce code

Code :
  1. Set ie = CreateObject("internetexplorer.application" )
  2. ie.Navigate ("http://jacxl.free.fr/cours_xl/mdp.html" )  
  3. ie.visible=true  
  4. Do While ie.Busy      
  5.     wscript.sleep (100)  
  6. Loop  
  7. wscript.sleep (2000)  
  8. Set dct = ie.Document.parentwindow.frames.Item(1).frames.Item(1).document  
  9. dct.frm.user_name.value="toto"  
  10. dct.frm.pass.value="zaza"  
  11. dct.frm.submit


Et que tu nommes ton fichier jenesaisquoi.vbs
Que se passe-t-il?  :??:
 
 
Edit : o put*** de  m**** je sens que tu fais du vba e que je donne des conseils en vbs :sweat:  :lol:


Message édité par _xme_ le 07-08-2009 à 09:57:55
mood
Publicité
Posté le 07-08-2009 à 09:56:21  profilanswer
 

n°1912688
foxley_gra​vity
Posté le 07-08-2009 à 10:17:21  profilanswer
 

lol oui je fais que du vba ,et je viens te passer ma corde ( humuor :p ) , mais je prend tout ce qui marche lol , si ton truc marche dans mon usual form ... mais non lol

n°1912912
_xme_
Posté le 07-08-2009 à 15:09:04  profilanswer
 

re
je viens de tester ce code là dans mon excel

Code :
  1. Sub Macro2()
  2. '
  3. ' Macro2 Macro
  4. ' Macro enregistrée le 07/08/2009 par 568341
  5. '
  6.  
  7. '
  8. Set ie = CreateObject("internetexplorer.application" )
  9. ie.Navigate ("http://jacxl.free.fr/cours_xl/mdp.html" )
  10. ie.Visible = True
  11. Do While ie.Busy
  12.  
  13. Loop
  14. Set dct = ie.document.parentwindow.frames.Item(1).frames.Item(1).document
  15. dct.frm.user_name.Value = "toto"
  16. dct.frm.pass.Value = "zaza"
  17. dct.frm.submit
  18. End Sub


et ca marche ;)
l'inconvenient par rapport au précédent, c'est que tant que la page internet n'est pas chargée, Excel suce le CPU
Je suis très étonné que la pause ne marche pas sous excel.
Si t'as le temps regarde comment faire une pause en vba, là perso je n'ai malheureusement pas le temps
Par contre n'enleve surtout la boucle While
sinon tu essayes d'acceder à la page ie alors qu'elle n'est pas correctement chargée en mémoire d'ou des comportements imprévisible ;)

n°1916627
dahnous
Posté le 19-08-2009 à 14:33:43  profilanswer
 

Bonjour à tous,
Puis-je avoir le code qui permet de copier le champ de cellules des 4 lignes(A:D) tant que ceux de la ligne D ne sont pas vides vers un fichier "synthèse.xls" (et répéter la même chose avec plusieurs fichiers de même format)
Merci d'avance.

n°1916900
seniorpapo​u
Posté le 20-08-2009 à 06:50:38  profilanswer
 

_xme_ a écrit :

re
je viens de tester ce code là dans mon excel

Code :
  1. Sub Macro2()
  2. '
  3. ' Macro2 Macro
  4. ' Macro enregistrée le 07/08/2009 par 568341
  5. '
  6.  
  7. '
  8. Set ie = CreateObject("internetexplorer.application" )
  9. ie.Navigate ("http://jacxl.free.fr/cours_xl/mdp.html" )
  10. ie.Visible = True
  11. Do While ie.Busy
  12.  
  13. Loop
  14. Set dct = ie.document.parentwindow.frames.Item(1).frames.Item(1).document
  15. dct.frm.user_name.Value = "toto"
  16. dct.frm.pass.Value = "zaza"
  17. dct.frm.submit
  18. End Sub


et ca marche ;)
l'inconvenient par rapport au précédent, c'est que tant que la page internet n'est pas chargée, Excel suce le CPU
Je suis très étonné que la pause ne marche pas sous excel.
Si t'as le temps regarde comment faire une pause en vba, là perso je n'ai malheureusement pas le temps
Par contre n'enleve surtout la boucle While
sinon tu essayes d'acceder à la page ie alors qu'elle n'est pas correctement chargée en mémoire d'ou des comportements imprévisible ;)


Bonjour,
avec peut-être un "do events" (vérifier la syntaxe)  en ligne 12


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA]ouvrir un page internet et inscrire un code pour ouvrir undossier

 

Sujets relatifs
VBA Graphiquescode d'authentification
Génération de code XMLgenerer du HTML a partir de la page aspx
recuperer gif sur internet avec webrequest[VBA] ouvrir un fichier dont le repertoire est choisi par lutilisateur
[VBA] Comment récupérer des propriétés avec BuiltinDocumentPropertiesAfficher lisiblement un code VBA sur un doc word
Plus de sujets relatifs à : [VBA]ouvrir un page internet et inscrire un code pour ouvrir undossier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR