Suivre le cours d'une action, possibilité d'ajouter le montant des parts de différents fonds de placement

Soyez le premier à donner votre avis sur cette source.

Vue 10 991 fois - Téléchargée 1 141 fois

Description

Cette source sert à suivre le cours d'une action, avec import automatique depuis la source.
Le Screen dit tout.

Je vous ai laissé mon test complet sur l'action Vinci avec des valeurs et le suivi complet depuis 1987, sachez que si vous suivez une autre action, tout repart de zéro et donc le graphique ne sera pas top, mais le sera au fur et à mesure des valeurs importées.
Sinon, cherchez un historique sur le net au format texte, il suffit de faire 2 colonnes séparés par un point-virgule, avec la date et la valeur.

Source / Exemple :


Public Sub MultiGraphicDrawing(CourbePlacement As String)
    Dim UBval       As Integer:     UBval = UBound(CotationsValues) - 1
    Dim i           As Integer
    Dim StartC      As Integer
    Dim j           As Byte:        j = 1
    Dim MyRowCount  As Byte
    Dim YearAverage As Double
    Dim ValTemp     As Double
    Dim MyPlacement As clsPlacement
    
frmMain.MSChart1.AllowSelections = False    ' Interdit la sélection dans le graphe
frmMain.lstValues.Clear

If ActionInfos.CotationsNumber <= 52 Then
    StartC = 1: MyRowCount = ActionInfos.CotationsNumber
Else
    StartC = ActionInfos.CotationsNumber - 52: MyRowCount = 53
End If

'********************************************************************************
'                           Choix de la courbe à afficher
'********************************************************************************

For Each MyPlacement In ActionInfos
    If CourbePlacement = MyPlacement.NamePlacement Then
        ValTemp = Val(MyPlacement.PlacementValue)
        Exit For
    Else
        ValTemp = 1
    End If
Next MyPlacement

With frmMain.MSChart1
    .chartType = VtChChartType2dLine   ' type de graphe (ici en ligne)
    .ColumnCount = 1                   ' nombre de ligne
    .RowCount = MyRowCount             ' nombre de semaine
    
    For i = StartC To ActionInfos.CotationsNumber
        .Row = j
        .Column = 1
        .RowLabel = CotationsDates(i)                                   ' les dates
        .Data = MyCDbl(CotationsValues(i)) * ValTemp   ' les valeurs
        YearAverage = YearAverage + .Data                               ' cumul des valeurs pour calculer la moyenne annuelle
        j = j + 1
        
        ' incrémentation des valeurs dans la liste de droite dans la form principale
        If frmMain.lstPlacements.Text <> ActionInfos.NameAction Then
            frmMain.lstValues.AddItem CotationsDates(i) & vbTab & .Data
        End If
    Next i
End With

    Set MyPlacement = Nothing

frmMain.ucAverageAction2.Caption = "Moyenne du placement (12 derniers mois) : " & CStr(Format(YearAverage / 53, "#0.00"))

' Pour que le curseur soit différent lorsque la souris passe sur le graphe
frmMain.MSChart1.DoSetCursor = True
frmMain.MSChart1.MousePointer = VtMousePointerCross

'********************************************************************************
'                           Paramètres de la légende
'********************************************************************************

frmMain.MSChart1.ShowLegend = True

'  Texte de la légende
With frmMain.MSChart1.Plot.SeriesCollection(1)
   .LegendText = "Valeur de " & CourbePlacement
End With

With frmMain.MSChart1.Legend
    .Location.LocationType = VtChLocationTypeRight             ' La légende sera au-dessus
    .TextLayout.HorzAlignment = VtVerticalAlignmentCenter      ' Alignement centré
    .VtFont.VtColor.Set 255, 255, 0                            ' Texte jaune.
    .Backdrop.Fill.Style = VtFillStyleBrush                    ' Style de fond
    .Backdrop.Fill.Brush.Style = VtBrushStyleHatched           ' Style de remplissage
    .Backdrop.Fill.Brush.FillColor.Set 159, 0, 255             ' Couleur de remplissage du fond de la
End With                                                       ' légende

'********************************************************************************
'                            Titre et mise en forme
'********************************************************************************

frmMain.MSChart1.TitleText = "Courbe de suivi d'action sur les 50 dernières valeurs"
With frmMain.MSChart1.Title.VtFont
    .Name = "Comic Sans MS"
    .Size = 15
    .Effect = VtFontEffectUnderline
End With
        
' Titre pour l'axe des Y côté gauche
With frmMain.MSChart1.Plot.Axis(1, 1)
     .AxisTitle.VtFont.Size = 14
     .AxisTitle.Visible = True
     .AxisTitle.Text = "Valeurs"
End With

' Virer les nombres côté droit
frmMain.MSChart1.Plot.Axis(2, 1).AxisScale.Hide = True
    
' Titre pour l'axe des X côté bas
With frmMain.MSChart1.Plot.Axis(0, 1)
     .AxisTitle.VtFont.Size = 14
     .AxisTitle.Visible = True
     .AxisTitle.Text = "Date"
End With

'********************************************************************************
'                         Couleurs et traits du graphe
'********************************************************************************
    
' Changer la couleur du graphe
With frmMain.MSChart1.Plot.SeriesCollection(1)
    .DataPoints(-1).Brush.FillColor.Set 255, 0, 0      ' couleur RGB
End With

' Changer la couleur du fond du graphe
With frmMain.MSChart1.Backdrop.Fill
    .Style = VtFillStyleBrush
    .Brush.FillColor.Set 255, 255, 255   'fond blanc
End With
  
' Placer une ligne colorée entre les éléments de la légende de l'axe Y ainsi que la ligne 0
With frmMain.MSChart1.Plot.Axis(VtChAxisIdX, 1)
    .Pen.VtColor.Set 237, 44, 78
End With
End Sub

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

42wawa42
Messages postés
143
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
6 septembre 2011
-
Hello mortalino
Suite du commentaire du 17/03/2007 23:35:10:

Apres download j'ai charger le programme dans VB6.0 et j'ai fait run. A la réponse que tu m?as donnée, j'ai copié les fichiers dans le même répertoire du programme, mais toujours le même petit problème.

A plus sur VBFrance
42wawa42
mortalino
Messages postés
6789
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
16 -
Salut 42wawa42,

je n'ai jamais eu ce problème, mais je pense à une chose, l'as tu empaqueté et installé sur un PC ?
Si tel est le cas, il faut que tu rajoutes le dossier Datas dans le dossier où se trouve le .exe, car il y fait référence.
Le problème je l'ai déjà eu avec InnoSetup, il faut rajouté le dossier dans les dépendances mais je ne me suis pas encore penché sur le sujet.

++
42wawa42
Messages postés
143
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
6 septembre 2011
-
Hello mortalino

J ai un petit problème de mise en marche de ton programme :
Dans la routine:
Public Sub Main()
un message erreur run-time error ?13? :
Type mismatch pour la ligne

If CBool(Config.ReadIniString("APPLICATION", "FirstLaunch")) Then frmIni.Show Else frmMain.Show

Voila.
A plus sur VBFrance
42wawa42

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.