Macro Excel VBA IE

Macro Excel VBA IE - VB/VBA/VBS - Programmation

Marsh Posté le 27-05-2010 à 15:09:29    

Bonjour,
 
Dans le cadre d'un projet je souhaite recupérer des données sur Intranet et les copier dans un fichier excel.
 
Sur l'intranet, j'arrive a charger mon fichier http://......./fichier.xls par contre je n'arrive pas à sélectionner l'ensemble des cellules du fichier ouvert dans IE pour ensuite les copier dans ma feuille Excel ......
 
QQ a-t-il une solution ou deja rencontré ce probleme ?
 
Merci.
 
Voici ma procedure :
 
Sub ExporterTexte_PageInternetDansCellule()
    Dim IE As InternetExplorer
     
    Set IE = CreateObject("InternetExplorer.Application" )
     
    With IE
        .Visible = False
        .Silent = True
        .Navigate "http://....../fichier.xls"
        .Visible = True
         
        Do Until .ReadyState = READYSTATE_COMPLETE
            DoEvents
        Loop 'attend la fin du chargement
 
        Cells(1, 1) = .Document.DocumentElement.InnerExcel
         
        .Quit
    End With
 
End Sub

Reply

Marsh Posté le 27-05-2010 à 15:09:29   

Reply

Marsh Posté le 27-05-2010 à 15:38:59    

Hello
 
Oula oula oula...!!!
 
Pas besoin de créer un objet IE...
Tu ouvres betement ton fichier Excel, et tu copies ce que tu veux...
 

Code :
  1. Workbooks.Open Filename:="http://.../fichier.xls"
  2.     With ActiveWorkbook
  3.         .ActiveSheet.Cells.Select
  4.         Selection.Copy
  5.     End With


Ou tu peux directement enregistrer le dit fichier ailleurs.

Code :
  1. Workbooks.Open Filename:="http://.../fichier.xls"
  2.     With ActiveWorkbook
  3.         .ActiveSheet.Cells.Select
  4.         Selection.Copy
  5.         NouvFichier = Application.GetSaveAsFilename(.Name, "Fichiers Excel (*.xls;*.xlsx), *.xls;*.xlsx", , "Enregistrement" )
  6.         .SaveAs NouvFichier
  7.     End With


Message édité par SuppotDeSaTante le 27-05-2010 à 15:50:56

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 27-05-2010 à 15:45:27    

oui effectivement je me suis peut etre embarqué dans un chemin compliqué ....
 
Je teste tes solutions et fais un retour.
Merci

Reply

Marsh Posté le 27-05-2010 à 15:54:23    

Qd j execute j'ai une erreur sur la ligne Workbooks.Open
 
Erreur d'execution 1004
Erreur définie par l'application ou par l'objet

Reply

Marsh Posté le 27-05-2010 à 15:58:01    

Cette erreur est due je pense , et j'ai oublié de le préciser, à une demande d'authentification (user/pwd) sur l'intranet

Reply

Marsh Posté le 27-05-2010 à 16:28:42    

Tu dois pouvoir les mettre dans l'url
Quelque chose comme ca :
Http://user:mdp@urlIntranet/fichier.xls


---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 27-05-2010 à 16:33:49    

non ca marche pas, j'ai essayé cette methode et le système ne comprend pas la syntaxe .....

Reply

Marsh Posté le 27-05-2010 à 16:49:50    

Alors comment passais tu le mot de passe avant ??


---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 27-05-2010 à 16:53:57    

Moi je ferai ca mais ca n'engage que moi :
 

Code :
  1. Set IE = CreateObject("InternetExplorer.Application" )
  2. IE.Visible = False
  3. IE.Navigate URL:="http://...." 'vers un dossier tout con du site
  4. 'donc logiquement il te demande le mot de passe et le laisse durant la session
  5. Workbooks.Open Filename:="http://.../fichier.xls"
  6.     With ActiveWorkbook
  7.         .ActiveSheet.Cells.Select
  8.         Selection.Copy
  9.     End With
  10. 'Une fois le traitement fais on ferme IE
  11. IE.Quit


 
En fait ouvrir IE ne sert qu'a entrer le mot de passe...


Message édité par SuppotDeSaTante le 27-05-2010 à 16:55:16

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 27-05-2010 à 17:01:21    

Je viens de me monter vite fait un mini site avec IIS. Mot de passe et user requis...
 
Quand je fais ca :
Workbooks.Open Filename:="http://.../fichier.xls"
Excel me demande mon user et mon mdp, je les tape, et derriere le fichier s'ouvre bien sans souci...
 
C'est quoi comme securité ?


---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 27-05-2010 à 17:01:21   

Reply

Marsh Posté le 27-05-2010 à 17:03:19    

avant je faisais ce que tu as automatisé ; à savoir => ouvrir une fenetre IE ou je rentre user + pwd et ensuite je lance ma macro.
 
je vais tester ta solution

Reply

Marsh Posté le 27-05-2010 à 17:06:04    

non j ai toujours le message d erreur ......

Reply

Marsh Posté le 27-05-2010 à 17:06:47    

je vais laisser tombé pour ce soir et m'y remettre demain.
merci pour vos contributions

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed