WinApp C# อยากแก้ Excel โดยไม่ใช้ Microsoft.Office.Interop.Excel หรือ ExcelLibrary.SpreadSheet.Workbook
ลองใช้ EPPlus ดูไหมครับ
http://www.codeproject.com/Articles/680421/Create-Read-Edit-Advance-Excel-Report-in
http://epplus.codeplex.com/
Date :
2015-10-15 16:00:10
By :
fonfire
อ้าว เพิ่งสังเกตุว่ามีการดึงมาจาก Report
อันนี้ผมไม่เคยทำน่ะครับ ไม่แน่ใจว่าทำได้ไหม
Date :
2015-10-15 16:04:48
By :
fonfire
ไฟล์เป็น Excel ครับ แค่เปลี่ยนนามสกุลมัน
เพื่อความสะดวกต่อการใช้งาน
เพราะมีหลายงานเกินที่ใช้ Excel
Date :
2015-10-15 16:12:11
By :
lamaka.tor
ผมชอบใช้ Interop Excel ครับ แต่ข้อเสีบคือช้าจริง ๆ ครับ แต่จัดรูปแบบได้เปะ ๆ เลย
Date :
2015-10-15 21:56:47
By :
mr.win
ผลลองใช้ EPPlus ดูแล้วครับ
โค้ดบ้าน ๆ แบบนี้ครับ
Code (C#)
// using
using OfficeOpenXml;
using OfficeOpenXml.Style;
tring file = @"F:\REPORT\1111\Chromium (III)_25570804 095424.Report";
using (ExcelPackage package = new ExcelPackage(new System.IO.FileInfo(file)))
{
// add a new worksheet to the empty workbook
ExcelWorksheet worksheet = package.Workbook.Worksheets[0];
MessageBox.Show(worksheet.Cells[2,7].Value.ToString());
// --------- Data and styling goes here -------------- //
}
เหมือนจะติด Error แบบนี้ ครับ
ต้องแก้ยังไงครับ
Date :
2015-10-16 08:52:33
By :
lamaka.tor
เป็นไฟล์ Office 2007 ขึ้นไปหรือปล่าวครับ
Epplus ใช้กับ Office 2003 ไม่ได้น่ะครับ
ผมลอง coding ดูตามนี้น่ะครับ
Code (C#)
FileInfo fi = new FileInfo("C:\\Test1.Report");
ExcelPackage ep = new ExcelPackage(fi);
ExcelWorkbook WB;
ExcelWorksheet ws;
WB = ep.Workbook;
MessageBox.Show(WB.Worksheets.Count.ToString());
ws = WB.Worksheets[1];
ws.Cells["A1"].Value = "This Cell Change by Coding";
ep.Save();
ก่อนแก้ไข
หลังแก้ไข
Date :
2015-10-16 10:02:27
By :
fonfire
Load balance : Server 04