ชุมชนคนรักภาษาเบสิค - Visual Basic Community

 ลืมรหัสผ่าน
 ลงทะเบียน
ค้นหา
ดู: 7858|ตอบกลับ: 1

[VB.NET] การ Export ข้อมูลจาก Datagridview ไป Excel file (แบบใส่ไข่)

[คัดลอกลิงก์]

11

กระทู้

31

โพสต์

427

เครดิต

ผู้ดูแลบอร์ด

Rank: 7Rank: 7Rank: 7

เครดิต
427

แก้ไขครั้งสุดท้ายโดย puklit เมื่อ 2018-1-22 19:25

สวัสดีทุกท่านก่อนหน้านี้ผมได้นำเสนอวิธีการนำเข้าไฟล์ Excel เข้ามาสู่โปรแกรมที่เราสร้างขึ้นมาแล้วผ่าน Datagirdview
ไปแล้วโดยโปรแกรมที่เราใช้งาน ส่วนใหญ่จะหลีกหนีไม่พ้นที่ต้องนำข้อมูลจากโปรแกรมของเราไปใช้ต่อในงานอื่น ๆ หรือสรุปทำรายงานบ้าง
ทีนี้ก็จะได้เวลาส่งข้อมูลใน Datagridview ออกไปยังไฟล์ Excel บ้าง (Export data)

ตัวอย่างหน้าฟอร์มหลักที่ผมสร้างขึ้นมีดังนี้
     - มี Toolstripbutton สำหรับนำข้อมูลออกจาก Datagridview ไปยัง Excel file
     - Datagridview ที่มีข้อมูลจะส่งต่อให้ Excel file


ขั้นตอนการใช้งานก็อ้างอิงลำดับตามรูปนี้ได้เลย


หลังจากกดปุ่ม Save ไปแล้วเมื่อไฟล์ Excel บันทึกเรียบร้อยแล้วโปรแกรมจะเรียกไฟล์ Excel ที่บันทึกไปแล้วขึ้นมาแสดงดังนี้


อ่าวไหนบอกว่าเป็นการ Export data แบบใส่ไข่ทำไมกลายเป็นแบบธรรมดาบ้าน ๆ ไปซะงั้นโค้ดผมน่าจะมี Bug
เดี่ยวผมขอลอง Export ใหม่อีกครั้ง


แล้วก็ได้หน้าตา Export data to Excel fie แบบใส่ไข่ (คล้าย ๆ กับโรตีใส่ไข่) มีดังนี้
1. จัด Alignment ข้อความ / ตัวหนา และเติมสี ตามที่ต้องการ
2. ผสานเซล์ล Merge cell ตามที่ต้องการได้
3. ใส่สูตรใน Excel เพื่อคำนวณได้
4. กำหนดรูปแบบ format cell เป็นสกุลเงิน หรืออยู่ในรูปแบบอื่น ๆ ได้
5.สร้างกราฟเพื่อแสดงข้อมูล พร้อมลูกเล่นได้

จริง ๆ แล้วมันก็เหมือนการเปิด Excel ไฟล์ขึ้นมาแล้วใส่ข้อมูลแล้วตกแต่งไฟล์เหมือนที่เราเคยทำปกติ แต่ในที่นี้เปลี่ยนวิธีคือ
สั่งผ่าน VB.NET โดยใช้ Object Excel library เข้าถึงไฟล์ Excel ขึ้นอยู่กับว่าเราต้องการให้ Excel file ของเราเป็นแบบไหน
ก็เขียนโค้ดสร้างเอา หากท่านใดเคยได้ลอง VBA ใน Excel มาแล้วคงจะเห็นภาพได้อย่างชัดเจน

สำหรับท่านที่สนใจในการเขียนก่อนอื่นให้เพิ่ม Object Excel library เข้ามาใน Project ที่เราสร้างก่อนตามรูปด้านล่างนี้



หลังจากนั้นก็ให้อ้างอิง Microsoft.Office.Interop.Excel.... ตามโค้ด
โดยในที่นี้ผมจะเขียนแบบเต็มเพื่อให้ท่านได้รู้ที่มาของมัน แม้แต่ With / End With ผมก็ไม่ได้ใช้
ตัวอย่าง
  1. Dim ExlApp As New Microsoft.Office.Interop.Excel.Application
คัดลอกไปที่คลิปบอร์ด

หากท่านขี้เกียจเขียนก็ย่อดังนี้
  1. 'อ้างอิง Excel ไปยัง Object Excel library
  2. Imports Excel = Microsoft.Office.Interop.Excel
  3. 'แล้วค่อยเรียกใช้ดังนี้
  4. Dim ExlApp As New Excel.Application
คัดลอกไปที่คลิปบอร์ด

ดาวน์โหลดโค้ดต้นฉบับแบบเต็ม VB.NET (2015) ได้ที่นี่





ขออภัย! โพสต์นี้มีไฟล์แนบหรือรูปภาพที่ไม่ได้รับอนุญาตให้คุณเข้าถึง

คุณจำเป็นต้อง ลงชื่อเข้าใช้ เพื่อดาวน์โหลดหรือดูไฟล์แนบนี้ คุณยังไม่มีบัญชีใช่ไหม? ลงทะเบียน

x

0

กระทู้

33

โพสต์

372

เครดิต

Full Member

Rank: 3Rank: 3

เครดิต
372
โพสต์ 2022-2-24 00:17:39 | ดูโพสต์ทั้งหมด

ขอบคุณคัพ
ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | ลงทะเบียน

รายละเอียดเครดิต

ข้อความล้วน|อุปกรณ์พกพา|ประวัติการแบน|G2GNet.com  

GMT+7, 2024-4-20 04:52 , Processed in 0.089054 second(s), 4 queries , File On.

Powered by Discuz! X3.4, Rev.62

Copyright © 2001-2020 Tencent Cloud.

ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้