乐博网lob.cn提示:调试环境为 vs2008 + windows2003 / windows2008 / xp / vista
VB.Net在Excel工作簿中使用Chart宿主控件显示图表代码如下:
Public Class Sheet1 '在Excel工作簿中使用Chart宿主控件显示图表 Private Sub Sheet1_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup Dim missing = System.Reflection.Missing.Value Me.Cells(1, 1) = "姓名" Me.Cells(1, 2) = "年薪(元)" Me.Cells(8, 2) = "收入合计" Me.Range("A1", "B1").Font.Bold = True Me.Range("A1", "B1").VerticalAlignment = Excel.XlVAlign.xlVAlignCenter Me.Range("A1", "B1").Interior.ColorIndex = 36 Me.Range("A2", "B6").Interior.ColorIndex = 38 Me.Cells(2, 1) = "陈A" Me.Cells(3, 1) = "王B" Me.Cells(4, 1) = "黄C" Me.Cells(5, 1) = "刘D" Me.Cells(6, 1) = "汪E" Dim MyRange1, MyRange2 As Excel.Range MyRange1 = Me.Range("B2", "B6") MyRange1.Formula = "=RAND()*100000" MyRange1.NumberFormat = "0.00" MyRange1 = Me.Range("A1", "B1") MyRange1.EntireColumn.AutoFit() Dim MyNum As Integer = 4 MyRange2 = Me.Range("C1", "C1").Resize(missing, MyNum) MyRange2.Formula = "=""主营业务""& COLUMN()-2 &""收入(元)""" MyRange2.EntireColumn.AutoFit() MyRange2.Orientation = 0 MyRange2.WrapText = True MyRange2.Interior.ColorIndex = 36 MyRange2 = Me.Range("C2", "C6").Resize(missing, MyNum) MyRange2.Formula = "=RAND()*10000000000" MyRange2.NumberFormat = "0.00" MyRange2 = Me.Range("C1", "C6").Resize(missing, MyNum) MyRange2.Borders.Weight = Excel.XlBorderWeight.xlThin MyRange2 = Me.Range("C8", "C8").Resize(missing, MyNum) MyRange2.Formula = "=SUM(C2:C6)" MyRange2.Borders.Item(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlLineStyle.xlDouble MyRange2.Borders.Item(Excel.XlBordersIndex.xlEdgeBottom).Weight = Excel.XlBorderWeight.xlThick Dim MyChart As Microsoft.Office.Tools.Excel.Chart MyChart = Me.Controls.AddChart(0, 110, 550, 200, "employees") MyChart.ChartType = Excel.XlChartType.xl3DColumnClustered MyChart.SetSourceData(Me.Range("C2", "F6"), missing) Dim MyString As String Dim MySeries As Excel.Series = CType(MyChart.SeriesCollection(1), Excel.Series) MySeries.XValues = Me.Range("A2", "A6") For i As Integer = 1 To 4 '更多.net源码和实例,来自乐博网 www.lob.cn MySeries = CType(MyChart.SeriesCollection(i), Excel.Series) MyString = "=""主营业务" MyString = MyString + i.ToString() MyString = MyString + """" MySeries.Name = MyString Next End Sub
Private Sub Sheet1_Shutdown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shutdown
End Sub
End Class
|