Vous êtes sur la page 1sur 8

Introduction

Ateliers VBA
Cours n1 22.02.2013 - Cration dInterfaces
Cours n2 01.03.2013 - Tlchargement de donnes
Cours n3 12.04.2013 - Codage de formule
Cours n4 xx.xx.2013 Synchronisation des dates

Atelier n 2

Atelier n 2 Tlchargement de donnes

Comment rcolter de linformation via Internet?


1) Manuellement
Aller chercher directement sur internet le fichier qui nous
intresse et le tlcharger.
2) Par Package
Base de donnes distribues en OpenSource contenant
lensemble des donnes historiques par type dactifs
financiers, par type de march (SMI, SPI, FTSE, etc.)
ou par activits (Hedge Fund, Mutual Fund, Indice, etc.)
3) Via VBA Ce que nous allons voir aujourdhui

Web Query

Le but tant dautomatiser


ce processus ralis
la main laide de VBA

Comment procder ?

Inclure votre WebQuery directement dans votre code VBA:


Une "ligne de code" permettant d'aller chercher le liens du fichier sur
internet
Un bout de code qui permet d'extraire les donnes recueillies sur
internet et de les afficher comme l'utilisateur le souhaite dans son
fichier Excel

Code Gnral
Sub SMI()
' Cette "ligne de code" permet d'aller chercher le liens du fichier sur internet et de l'extraire dans notre fichier excel
sURL1 = "http://ichart.finance.yahoo.com/table.csv?s=
%5ESSMI&d=9&e=1&f=2012&g=d&a=10&b=9&c=1990&ignore=.csv"
' Ce "bout de code" permet d'extraire les donnes recueillies sur internet
Workbooks.Open sURL1
' Ouverture de la source URL
Set RngSource = Cells(1).CurrentRegion
' Dans fichier Excel, on prend par dfaut la premire cellule
X=
' X = nombre de ligne que je veux qu'il m'affiche
Y=
' Y = nombre de colonne que je veux qu'il m'affiche
' Ce "bout de code" permet de les afficher comme l'utilisateur le souhaite
With ThisWorkbook.Sheets()
' With = met place un contexte - pour la feuille n1 du WB
Set RngDest = Range(.Cells( , ), .Cells( , ))
' Slctionne de la celulle ligne 2 colonne 1 et tte celles jusqu'
la fin X
End With
' (.) evite de rcrire this WB
RngDest.Value = RngSource.Value
' la valeur de mon range prend la valeur de ma source
Permet de sauvegarder les donnes
ActiveWorkbook.Close SaveChanges:=True

' Je ferme la page WB // En sauvant les donnes

TP VBA II - Travail demand

Tlchargement automatis de donnes historique


pour 3 titres
depuis Yahoo Finance.
Calculer le rendement moyen pour chaque titre
Les rsultats seront affichs dans une UserForm

TP VBA II - Travail demand

-) Expliquer de faon dtaill le code que vous utilisez


-) possibilit deffacer et recommencer le travail indfiniment
-) bloquer lcran lorsque lapplication travaille
-) Mise en place dune boucle permettant dallger le code
( ne pas copier coller le code pour chaque titre mais utiliser cette boucle)

-) Grer le tlchargement via une Userform


( ne pas voir le fichier excel)

Menvoyer par mail votre fichier xls la fin du cours


Vous avez jusqu midi - Merci et bon travail !!!

Vous aimerez peut-être aussi