Bonjour !
C'est très simple, je t'explique :
Tu crées une instance de ton excel :
1 2 3 4 5 6
| Dim l_objexcel As Excel.Application
Dim l_objworkbook As Excel.Workbook
l_objexcel = New Excel.Application
l_objworkbook = l_objexcel.Workbooks.Add
l_objexcel.Visible = True |
Pour remplir le tableau tu fais comme ceci :
1 2 3 4 5 6
| l_objexcel.Range("A1").Value = "A"
l_objexcel.Range("A2").Value = "B"
l_objexcel.Range("A3").Value = "C"
l_objexcel.Range("B1").Value = "11"
l_objexcel.Range("B2").Value = "15"
l_objexcel.Range("B3").Value = "67" |
Ensuite tu selectionne ta plage de donnée :
l_objexcel.Range("A1:B3").Select()
Et tu crées ton graphique :
1 2 3 4 5 6 7 8 9 10 11
| l_objexcel.ActiveSheet.Shapes.AddChart.Select()
l_objexcel.ActiveChart.SetSourceData(Source:=l_objexcel.Range("A1:B3"))
l_objexcel.ActiveChart.ChartType = Excel.XlChartType.xl3DPieExploded
l_objexcel.ActiveChart.ChartStyle = 26 'Option Excel 2007
l_objexcel.ActiveChart.ClearToMatchStyle() 'Option Excel 2007
l_objexcel.ActiveChart.ApplyLayout(2) 'Option Excel 2007
l_objexcel.ActiveChart.SeriesCollection(1).Select()
l_objexcel.ActiveSheet.ChartObjects("Graphique 1").Activate()
l_objexcel.ActiveChart.ChartTitle.Text = "Mon titre"
l_objexcel.ActiveChart.ChartArea.Width = 600
l_objexcel.ActiveChart.ChartArea.Height = 400 |
Tu peu meme prendre ton graphe et le coller dans une PictureBox de ton appli :
1 2 3 4 5
| l_objexcel.ActiveChart.ChartArea.Select()
l_objexcel.ActiveChart.ChartArea.Copy()
Dim Objbmp As Object = Clipboard.GetImage
PictureBox1.Image = objbmp |
Voili voilou
Partager