VB.NET 엑셀 사용하기
Imports Excel1 = Microsoft.Office.Interop.Excel
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim xlApp As Excel1.Application
Dim xlWorkBook As Excel1.Workbook
Dim xlWorkSheet As Excel1.Worksheet
Dim misValue As Object = System.Reflection.Missing.Value
xlApp = New Excel1.Application
xlWorkBook = xlApp.Workbooks.Add(misValue)
xlWorkSheet = xlWorkBook.Sheets("sheet1")
'add data
xlWorkSheet.Cells(1, 1) = ""
xlWorkSheet.Cells(1, 2) = "Student1"
xlWorkSheet.Cells(1, 3) = "Student2"
xlWorkSheet.Cells(1, 4) = "Student3"
xlWorkSheet.Cells(2, 1) = "Term1"
xlWorkSheet.Cells(2, 2) = "80"
xlWorkSheet.Cells(2, 3) = "65"
xlWorkSheet.Cells(2, 4) = "45"
xlWorkSheet.Cells(3, 1) = "Term2"
xlWorkSheet.Cells(3, 2) = "78"
xlWorkSheet.Cells(3, 3) = "72"
xlWorkSheet.Cells(3, 4) = "60"
xlWorkSheet.Cells(4, 1) = "Term3"
xlWorkSheet.Cells(4, 2) = "82"
xlWorkSheet.Cells(4, 3) = "80"
xlWorkSheet.Cells(4, 4) = "65"
xlWorkSheet.Cells(5, 1) = "Term4"
xlWorkSheet.Cells(5, 2) = "75"
xlWorkSheet.Cells(5, 3) = "82"
xlWorkSheet.Cells(5, 4) = "68"
'create chart
Dim chartPage As Excel1.Chart
Dim xlCharts As Excel1.ChartObjects
Dim myChart As Excel1.ChartObject
Dim chartRange As Excel1.Range
xlCharts = xlWorkSheet.ChartObjects
myChart = xlCharts.Add(10, 80, 300, 250)
chartPage = myChart.Chart
chartRange = xlWorkSheet.Range("A1", "d5")
chartPage.SetSourceData(Source:=chartRange)
chartPage.ChartType = Excel1.XlChartType.xlColumnClustered
'xlWorkSheet.SaveAs("c:\ex.xls")
xlWorkSheet.SaveAs(IO.Path.Combine(Application.StartupPath, "MyNewFile.xlsx"))
xlWorkBook.Close()
xlApp.Quit()
releaseObject(xlApp)
releaseObject(xlWorkBook)
releaseObject(xlWorkSheet)
MsgBox("Excel1 file created , you can find the file c:\")
End Sub
Private Sub releaseObject(ByVal obj As Object)
Try
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
obj = Nothing
Catch ex As Exception
obj = Nothing
Finally
GC.Collect()
End Try
End Sub
End Class