Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Récupération cours de bourse

27 views
Skip to first unread message

Norbert

unread,
Jan 13, 2001, 3:46:03 AM1/13/01
to
Bonjour,

Existe-t-il un moyen de récupérer automatiquement des cours boursiers dans
Excel ?

requête ou autres.....

Merci de vos réponses
A+


J@C

unread,
Jan 13, 2001, 8:42:43 AM1/13/01
to
plusieurs possibilités
télécharger directement à partir d'un site que offre cette possibilité
faire une requête internet
ouvrir la page html sous Excel et aller chercher l'info par VBA
plus de détail http://jacxl.free.fr/cours_xl/accueil.html (pub!)
J@C

"Norbert" <nor...@wanadoo.fr> a écrit dans le message news:
93p4ob$abu$1...@wanadoo.fr...

Germain Poissonnet

unread,
Jan 14, 2001, 12:53:25 PM1/14/01
to
Ci-dessous les différentes macros qu j'utilise pour récupérer les cours et
les mettres en listes horizontales
Tu prendra ce que tu voudras
A+
Pour faire une Requete Microsoft Office.

Dans le dossier C:\Program Files\Microsoft Office\Requetes\ créer un fichier
avec le Bloc-Notes par exemple.
Ce fichier contiendra 3 lignes :
WEB
1
http://www.boursorama.com/portefeuille/new_print_portefeuille.phtml?..etc

Ceci est l'adresse complète du site où la page Web est à rapatrier
Enregistrer ce fichier avec un nom et extension .iqy. Dans mon cas :
Portef1.iqy.

La procédure suivante appelera le site et transferera la page ou tableau
dans excel a partir de la cellule A1

Public Sub Portef_Query()
With ActiveSheet.QueryTables.Add(Connection:= _
FINDER;C:\Program Files\Microsoft Office\Requetes\Portef1.iqy,
Destination:=Range("A1"))
' Range A1 est dans la feiulle active d'excel
.FieldNames = False
.RefreshStyle = xlInsertDeleteCells
.RowNumbers = False
.FillAdjacentFormulas = False
.RefreshOnFileOpen = False
.HasAutoFormat = True
.BackgroundQuery = True
.TablesOnlyFromHTML = True
.Refresh BackgroundQuery:=False
.SavePassword = False
.SaveData = True
End With
End Sub
=====================================================================
Ci-dessous les macros que j'utilise afin de rapatrier 4 tableau dans 4
feuilles distinctes. Elles sont dans mon mon fichier Action_T_3.xls

Option Explicit
Const lefichier_T = "Action_T_3.xls"

Public Sub nettoie(portef)
Sheets(portef).Select
Range("A1:K40").Select
Selection.ClearContents
With Selection
.WrapText = False
.Orientation = 0
.ShrinkToFit = False
.MergeCells = False
End With
Range("A1").Select
End Sub

Sub Clear_le_Fichier_T()
'Le fichier T est celui dans lequel je charge les infos de Boursorama, il
comporte 4feuilles
Dim Inrcr As Integer
Windows(lefichier_T).Activate
Call nettoie("portef_1") ' Je clear ce fichier pour suprimer les
cellules groupées.
Call nettoie("portef_2")
Call nettoie("portef_3")
Call nettoie("portef_4")
Sheets("portef_1").Select
End Sub

Public Sub Portef_Query(No_portef)
With ActiveSheet.QueryTables.Add(Connection:= _
No_portef, Destination:=Range("A1"))
.FieldNames = False
.RefreshStyle = xlInsertDeleteCells
.RowNumbers = False
.FillAdjacentFormulas = False
.RefreshOnFileOpen = False
.HasAutoFormat = True
.BackgroundQuery = True
.TablesOnlyFromHTML = True
.Refresh BackgroundQuery:=False
.SavePassword = False
.SaveData = True
End With
End Sub

Public Sub Web_to_Excel()
Dim bourso
Dim CRLF As String
Const Q_Portef_1 = "FINDER;C:\Program Files\Microsoft
Office\Requetes\Portef1.iqy"
Const Q_Portef_2 = "FINDER;C:\Program Files\Microsoft
Office\Requetes\Portef2.iqy"
Const Q_Portef_3 = "FINDER;C:\Program Files\Microsoft
Office\Requetes\Portef3.iqy"
Const Q_Portef_4 = "FINDER;C:\Program Files\Microsoft
Office\Requetes\Portef4.iqy"
CRLF = Chr(13) & Chr(10) 'défini le Cr et le LF : la Const n'en
veut pas
'Appel Internet Boursorama pour le code et Password
Application.ScreenUpdating = False
Clear_le_Fichier_T
Windows(lefichier_T).Activate
' pour préparer la ligne suivante active dans toutes les procédures
Sheets("Portef_1").Select
Call Portef_Query(Q_Portef_1) 'appel le P_1
Sheets("Portef_2").Select
Call Portef_Query(Q_Portef_2)
Sheets("Portef_3").Select
Call Portef_Query(Q_Portef_3)
Sheets("Portef_4").Select
Call Portef_Query(Q_Portef_4)
Sheets("Portef_1").Select
Application.ScreenUpdating = True
End Sub


"Norbert" <nor...@wanadoo.fr> a écrit dans le message news:
93p4ob$abu$1...@wanadoo.fr...

0 new messages