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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Comment télécharger un fichier se trouvant sur le net en VBA ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment télécharger un fichier se trouvant sur le net en VBA ?

n°1702964
Player1979
Posté le 15-03-2008 à 23:39:13  profilanswer
 

Bonjour à tous,
 
Je réalise un projet sous excel en VBA, pour mon master2. Je débute en VBA et ai justement choisi de le faire en VBA afin de pouvoir apprendre ce langage qui me sera utile dans mon futur travail (d'ailleurs je suis intéressé par des sites ou références de livres permettant de me perfectionner en excel et VBA).
 
Bon passons et venons en à ma question !
 
Je souhaiterai savoir comment faire pour télécharger un fichier au format tableur qui se trouve sur internet. Plus précisément, je voudrais qu'en cliquant sur un bouton "mise à jour" par exemple, que excel se connecte à l'url voulu et aille ouvrir directement ce fichier dans une feuille "Temporaire" du classeur.  
Je vous communique l'url où se situe justement le fichier : http://fr.finance.yahoo.com/q/hp?s=EDF.PA
( Télécharger au format tableur)
En espérant d'avoir été assez précis.
Merci.
Bonne soirée.

mood
Publicité
Posté le 15-03-2008 à 23:39:13  profilanswer
 

n°1702967
otobox
Maison fondée en 2005
Posté le 16-03-2008 à 00:03:14  profilanswer
 

Code :
  1. Sub telecharger()
  2. dim strURL as string
  3. strURL="http://fr.finance.yahoo.com/q/hp?s=EDF.PA"
  4. Workbooks.Open FileName:=strURL
  5. end sub


 
Ensuite, tu fais une recherche dans les cellules pour retrouver celle qui contient "Ouverture" et les données que tu veux récupérer sont juste en dessous ;)
 
Bon courage,
 
JM


---------------
OtObOxBlOg - - - Etre seul à avoir tort  c'est plus difficile, mais c'est bien plus beau que d'avoir raison avec une bande de cons
n°1702968
Player1979
Posté le 16-03-2008 à 00:14:30  profilanswer
 

Merci beaucoup pour la rapidité de ta réponse. Néanmoins, j'ai du mal m'exprimer car je voudrais télécharger le fichier directement: "Télécharger au format tableur". Cependant, si ce n'est pas réalisable ou s'il n'y a pas de suggestion de réponse alors ton code me dépannera et me servira malgré tout.
Encore merci et bonne soirée

n°1702971
otobox
Maison fondée en 2005
Posté le 16-03-2008 à 00:23:36  profilanswer
 

Le fichier reçu est au format tableur, chaque valeur est dans une cellule. Mais c'est sûr que la mise en page laisse à désirer... A toi de la nettoyer, en vba ça va assez vite et c'est une bonne façon d'apprendre les différentes fonctions (supprimer des lignes, des cellules, compter les valeurs, mais aussi refaire des bordures, fonds de cellules etc.)
 
JM


---------------
OtObOxBlOg - - - Etre seul à avoir tort  c'est plus difficile, mais c'est bien plus beau que d'avoir raison avec une bande de cons
n°1702973
Player1979
Posté le 16-03-2008 à 00:38:18  profilanswer
 

Oui c'est surement un très bon exercice lol. Le problème est que l'historique n'est pas complet. Puis cela m'aurait permis de gagner beaucoup de temps.  
En tout cas pour le moment je vais me concentrer sur ta réponse et faire ce que tu me conseilles comme exercice lol. Je pensais utiliser une macro pour effectuer la mise en page et l'incorporer dans ton code par exemple. Est ce une bonne méthode ou devrais je faire autrement ? Pourrais tu me conseiller un site sur lequel je trouverai justement des explication et information sur les différentes fonction en vba(supprimer des lignes, des cellules, compter les valeurs, mais aussi refaire des bordures, fonds de cellules etc.)  
Encore merci du suivi

n°1702990
otobox
Maison fondée en 2005
Posté le 16-03-2008 à 08:15:57  profilanswer
 

Oups ! mea-culpa, je n'avais pas vu qu'il existait un lien direct "télécharger au format tableur" ! (http://ichart.yahoo.com/table.csv?s=EDF.PA&a=10&b=21&c=2005&d=2&e=16&f=2008&g=d&ignore=.csv)
Dans ce cas, tu indiques cette adresse dans strURL à la place de celle indiquée plus haut et ça devrait fonctionner !
 
Sinon, j'ai appris le vba avec le bouquin "vba pour les nuls", beaucoup de recherche sur le net et notamment sur Developpez.com (la faq est très très complète, il vaut mieux l'avoir consultée avant de poser une question sous risque de ne pas avoir de réponse !).
Il y a aussi le site de Cathy Astuces qui est pas mal, malgré une présentation un peu brouillon.
Si tu as déjà fait un peu de prog, tu ne devrais pas avoir trop de mal à te mettre au vba, c'est assez facile à comprendre à partir du moment où on a pigé comment fonctionne la programmation orientée objet.
 
JM


---------------
OtObOxBlOg - - - Etre seul à avoir tort  c'est plus difficile, mais c'est bien plus beau que d'avoir raison avec une bande de cons
n°1703000
Player1979
Posté le 16-03-2008 à 10:23:06  profilanswer
 

Bonjour,
 
Je te remercie une fois de plus pour ton investissement et tes réponses.  
Effectivement j'ai déjà fait de la prog en C/C++. Mais j'ai choisi de faire ce projet en VBA pour justement apprendre ce langage et essayer de me perfectionner.
Je suis rassuré car je consulte déjà ces sites lol.
Aujourd'hui, je vais poursuivre le code et te tiendrai au courant.  
Merci et bon dimanche.
 

n°1783646
jay-jay69
Posté le 07-09-2008 à 16:02:00  profilanswer
 

hello tout le monde,
 
Quand j'utilise cette fonction avec l'url :
 

Code :
  1. strURL = "http://www.euronext.com/search/download/pricesearchdownloadpopup.jcsv?pricesearchresults=actif&equitiesChoice=1&structuredProductType=8&requestComesFromSearchBoxParameter=true&lan=EN&resultsTitle=Warrants&cha=1812&underlying=FR0003500008*XPAR*ISIN&instrumentType=3&underlyingType=2&riskLevel=L&format=xls&formatDecimal=.&formatDate=dd/MM/yy"


 
Ca me fait une erreur assez bizarre : ca marque juste "400" dans Visual Basic...  
 
Je suis sous 2007.
 
Merci pour votre aide,
 
m.


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

  Comment télécharger un fichier se trouvant sur le net en VBA ?

 

Sujets relatifs
Affecter un pointeur de fichier a un autrepasser et afficher un fichier xml à travers php
[HTML]Construction de fichier HTML à la voléeCréer une fichier .mms
substitutions de valeurs dans un fichiercopie de fichier
Boîte de dialogue pour copie d'un fichiertrier un fichier xml en perl
Décryptage d'un fichier 
Plus de sujets relatifs à : Comment télécharger un fichier se trouvant sur le net en VBA ?


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