Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SUIVRE LE COURS D'UNE ACTION, POSSIBILITÉ D'AJOUTER LE MONTANT DES PARTS DE DIFFÉRENTS FONDS DE PLACEMENT


Information sur la source

Catégorie :Graphique Classé sous : action, suivi, graphique, mschart, bourse Niveau : Débutant Date de création : 10/03/2007 Date de mise à jour : 10/03/2007 20:07:07 Vu / téléchargé: 6 404 / 901

Note :
Aucune note

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note


Description

Cliquez pour voir la capture en taille normale
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

  • 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
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

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

10 mars 2007 20:07:07 :
Suppression d'une classe qui n'avait rien à faire là.

Commentaires et avis

signaler à un administrateur
Commentaire de 42wawa42 le 17/03/2007 23:35:10

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

signaler à un administrateur
Commentaire de mortalino le 17/03/2007 23:46:53

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.

++

signaler à un administrateur
Commentaire de 42wawa42 le 18/03/2007 11:56:12

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

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Impression d'un MSChart [ par DICK ] J'ai plus ou moins reussi a imprimer mon graphique que j'ai créer avec MSChart.(Il prend ces données dans un ado)Pour cela, j'ai utiliser la commande Eliminer un point d'une courbe (MSCHART) [ par Baddack ] Attention ce message s'adresse à un dieu du VB.Je dois afficher une courbe avec un MsChart.Jusque là rien de méchant.Puis si l'utilisateur trouve un Dessiner un graphique en vb avec MSChart [ par titi18 ] Bonjour,Je souhaite créer un graphique sous forme d'histogramme. Dans l'aide j'ai vu que pour utiliser MSChart il faut remplir un tableau DataGrid qui Copie de graphique [ par rhum1 ] Bonjour,j'ai un object Mschart (dans mon formulaire) que je voudrais copié dans un autre MSChart vierge (déclaré dans le code).Comment dois je faire?M MSChart [ par Fripouil ] FripouilVoila je n arrive pas a trouvé le code à utiliser pour modifier les données des colonnes de mschart.Explication :J ai une form avec des option Dimensionner un MSCHART [ par pulley60 ] Salut à tous!!Voilà, j'utilise des MSChart sous VB pour tracer des graphiques 2D à partir d'une variable de données, mais j'ai un problème : le graphi ErrorBar avec un MSChart [ par pulley60 ] Bonjour à tous, je voudrais savoir s'il est possible d'afficher des ErrorBar sur la courbe d'un graphique dans un MSChart comme on peux le faire sous MSChart: representation graphique? [ par sly63 ] Hello Everybody, Everybody hello1/premier problème:J'ai une liste de 2500 points de coordonnées (x,y) que je souhaite représenter graphiquement en uti Mschart [ par bearkiller ] j'ai creer 3 graphique avec Mschart mais je voudrais savoir comment peut on les afficher sur le meme graphique (superposer les courbes)merci d'avance MSChart - Indiquer la valeur X et Y [ par Enigme ] Bonjour,est-il possible de savoir quels sont les valeurs X et Y d'un point sur un graphique en fonction de l'endroit ou la souris se positionne (Evene


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,374 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.