Inserer un graphique dans userform

Description

Bonjour,

Je programme sous VBA excel, j'ai cherché pendant quelques temps le moyen d'inserer un graphique excel dans un userform sans utilisé une technique d'image GIF mais plutôt le composant "miscrosoft Office chart 9" (MSOWC.dll).

Important :
Vous devez inserer le controle supplementaire dans la barre d'outil " Microsot Office Chart 9" et creer le graphique sur le Userform.

Source / Exemple :


Private Sub UserForm_Activate()
Dim oChart, oSeries1, oSeries2
Dim oAxis1, oAxis2, oConst
Dim S1(43), S2(43), S3(43) As Variant

'on crée les tableaux de variables
For i = 1 To 43
S1(i) = Cells(i + 1, 2)
S2(i) = Cells(i + 1, 3)
S3(i) = Cells(i + 1, 4)
Next

'on efface tout
ChartSpace1.Clear
Set oConst = ChartSpace1.Constants
' Création diagramme dans le ChartSpace
Set oChart = ChartSpace1.Charts.Add
' Ajout 1ere série de type XYscatter plot
Set oSeries1 = oChart.SeriesCollection.Add
oSeries1.Caption = "Current"
oSeries1.Type = oConst.chChartTypeScatterSmoothLine ' on peut changer le type, se reférer à l'explorateur d'objet
oSeries1.SetData oConst.chDimXValues, oConst.chDataLiteral, S1()
oSeries1.SetData oConst.chDimYValues, oConst.chDataLiteral, S2()
' Ajout 2eme série de type XYscatter plot
Set oSeries2 = oChart.SeriesCollection.Add
oSeries2.Caption = "estimate"
oSeries2.Type = oConst.chChartTypeScatterSmoothLine
oSeries2.SetData oConst.chDimXValues, oConst.chDataLiteral, S1()
oSeries2.SetData oConst.chDimYValues, oConst.chDataLiteral, S3()

' les Axes
Set oAxis1 = oChart.Axes(oConst.chAxisPositionLeft)
oAxis1.Scaling.Maximum = 0.05
oAxis1.Scaling.Minimum = 0.025
oAxis1.NumberFormat = "0.0%"
oAxis1.HasMajorGridlines = True
Set oAxis2 = oChart.Axes(oConst.chAxisPositionBottom)
oAxis2.Scaling.Maximum = 30
oAxis2.Scaling.Minimum = 0
oAxis2.NumberFormat = "0"
oAxis2.HasMajorGridlines = True
'on indiue la légende
oChart.HasLegend = True
oChart.Legend.Position = oConst.chLegendPositionBottom
'on définit la couleur de fonds
oChart.PlotArea.Interior.Color = "white"

'on peut définir toutes les propriétés supplémentaires en se référant à l'explorateur sous "spacechart"
End Sub

Codes Sources

A voir également

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.