คำตอบ อยู่ที่นี่แล้ว
อิๆๆ สั้นๆ ได้ใจความ
1. ให้สร้างโปรเจกต์ขึ้นมาใหม่ จากนั้น ไปที่เมนู PROJECT เลือกรายการ Add Reference...
ที่หน้าต่าง Reference Manager ให้เลือก Extensions แล้วไปคลิกเลือก Microsoft.Office.Interop.Excel
2. จากนั้น สร้าง DataGrideView ชื่อ DataGridView1 แล้วทำอย่างไรก็ได้ตามสะดวกเพื่อนำข้อมูลมาใส่ (อันนี้เขียนโปรแกรมเองน่ะครับ ไม่ขออธิบาย เดี๋ยวจะยาว)
3. ทำการเพิ่มปุ่ม Button สำหรับคลิกเพื่อให้ทำการ Export โดยตั้งชื่อเป็น Button1 ที่เหลือกำหนด Property เอาเอง ดังภาพ
3. ทำการเพิ่มปุ่ม Button สำหรับคลิกเพื่อให้ทำการ Export โดยตั้งชื่อเป็น Button1 ที่เหลือกำหนด Property เอาเอง ดังภาพ
ดับเบิ้ลคลิกที่ปุ่ม แล้วทำการเขียนคำสั่ง ดังนี้
บรรทัดบนสุดก่อน Public Class ของฟอร์ม ให้ Imports ก่อน อย่าลืม โดยพิมพ์คำสั่ง
Imports Excel = Microsoft.Office.Interop.Excel
จากนั้น ที่ Sub Button1 ป้อนคำสั่ง ดังนี้
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim excelLocation As String = "d:\test.xlsx"
Dim xlApp As Excel.Application = New Microsoft.Office.Interop.Excel.Application()
If xlApp Is Nothing Then
MessageBox.Show("Excel is not Install.")
Return
End If
Dim xlWorkBook As Excel.Workbook
Dim xlWorkSheet As Excel.Worksheet
Dim misValue As Object = System.Reflection.Missing.Value
xlWorkBook = xlApp.Workbooks.Add(misValue)
xlWorkSheet = xlWorkBook.Sheets("sheet1")
'Header Names
Dim columnsCount As Integer = DataGridView1.Columns.Count
For Each column In DataGridView1.Columns
xlWorkSheet.Cells(1, column.Index + 1).Value = column.Name
Next
'Data
For i As Integer = 0 To DataGridView1.Rows.Count - 1
Dim columnIndex As Integer = 0
Do Until columnIndex = columnsCount
xlWorkSheet.Cells(i + 2, columnIndex + 1).Value = DataGridView1.Item(columnIndex, i).Value
columnIndex += 1
Loop
Next
xlWorkBook.SaveAs(excelLocation)
xlWorkBook.Close()
xlApp.Quit()
MessageBox.Show("Export to Excel Complete")
End Sub
จากนั้นก็สั่งรันโปรแกรมทดสอบ ก็จะได้ไฟล์ชื่อ "d:\test.xlsx" อยู่ที่ไดร์ฟ D:
อยากเก็บไว้ที่ไหนไฟล์อะไรก็แก้เอาน่ะ
สวัสดี มีความสุขทุกวัน
บรรทัดบนสุดก่อน Public Class ของฟอร์ม ให้ Imports ก่อน อย่าลืม โดยพิมพ์คำสั่ง
Imports Excel = Microsoft.Office.Interop.Excel
จากนั้น ที่ Sub Button1 ป้อนคำสั่ง ดังนี้
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim excelLocation As String = "d:\test.xlsx"
Dim xlApp As Excel.Application = New Microsoft.Office.Interop.Excel.Application()
If xlApp Is Nothing Then
MessageBox.Show("Excel is not Install.")
Return
End If
Dim xlWorkBook As Excel.Workbook
Dim xlWorkSheet As Excel.Worksheet
Dim misValue As Object = System.Reflection.Missing.Value
xlWorkBook = xlApp.Workbooks.Add(misValue)
xlWorkSheet = xlWorkBook.Sheets("sheet1")
'Header Names
Dim columnsCount As Integer = DataGridView1.Columns.Count
For Each column In DataGridView1.Columns
xlWorkSheet.Cells(1, column.Index + 1).Value = column.Name
Next
'Data
For i As Integer = 0 To DataGridView1.Rows.Count - 1
Dim columnIndex As Integer = 0
Do Until columnIndex = columnsCount
xlWorkSheet.Cells(i + 2, columnIndex + 1).Value = DataGridView1.Item(columnIndex, i).Value
columnIndex += 1
Loop
Next
xlWorkBook.SaveAs(excelLocation)
xlWorkBook.Close()
xlApp.Quit()
MessageBox.Show("Export to Excel Complete")
End Sub
จากนั้นก็สั่งรันโปรแกรมทดสอบ ก็จะได้ไฟล์ชื่อ "d:\test.xlsx" อยู่ที่ไดร์ฟ D:
อยากเก็บไว้ที่ไหนไฟล์อะไรก็แก้เอาน่ะ
สวัสดี มีความสุขทุกวัน
4 ความคิดเห็น:
ขอขอบพระคุณอาจารย์อย่างสูงนะคะ
ที่ให้ความรู้ที่มีประโยชน์อย่างมากมาย
ขอบคุณค่ะ
สุดยอดเลยครับ ผมกำลังหัด .net หลังจากใช้ vb6 มานาน ขอบคุณมากครับอาจารย์
ขอบคุณครับ
แสดงความคิดเห็น