[C#] Hướng dẫn xuất dữ liệu datatable sang excel với thư viện EPPlus Excel csharp
Xin chào các bạn bài viết hôm nay, mình sẽ chia sẽ đến các bạn hàm xuất dữ liệu từ DataTable sang Excel sử dụng thư viện EPPlus Excel C# Winform. Đầu tiên, các bạn cần cài đặt thư viện EPPlus Excel từ Nuget về với dòng lệnh sau từ Nuget Console: PM> ...
Xin chào các bạn bài viết hôm nay, mình sẽ chia sẽ đến các bạn hàm xuất dữ liệu từ DataTable sang Excel sử dụng thư viện EPPlus Excel C# Winform.
Đầu tiên, các bạn cần cài đặt thư viện EPPlus Excel từ Nuget về với dòng lệnh sau từ Nuget Console:
PM> Install-Package EPPlus -Version 4.5.3.2
Sau khi cài đặt xong các bạn viết cho mình hàm ExportExcelFromDataTable().
Hàm trên các bạn chỉ cần truyền vào 2 parametter là: datatable và đường dẫn lưu file excel.
Các tham số kế tiếp các bạn có thể thêm nếu thích:
+ Ghi file Excel vào Sheet nào
+ Bắt đầu ghi từ ô bao nhiêu (A2)
+ Có xuất header hay không
+ Đặt mật khẩu cho file Excel...
Đầu tiên các bạn cần import thư viện vào.
using OfficeOpenXml;
Source code ExportExcelFromDataTable() Epplus C#:
public static void ExportExcelFromDataTable(DataTable table, string fullPathFileName, string SheetName = "Sheet 1", string WriteBeginCell = "A2", string passwordFile = "", bool isPrintHeader = true, bool isOpenFileExcel = true) { if (table.Rows.Count <= 0) { XtraMessageBox.Show("Không tìm thấy dữ liệu!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (File.Exists(fullPathFileName)) { var dlg = XtraMessageBox.Show($"Tên file {Path.GetFileName(fullPathFileName)} đã tồn tại! Đặt lại tên khác!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } var fileInfo = new FileInfo(Path.GetFileName(fullPathFileName)); using (ExcelPackage pck = new ExcelPackage(fileInfo, passwordFile)) { pck.Workbook.Properties.Author = Module1.StrTenDangNhap; pck.Workbook.Properties.Company = "LẬP TRÌNH VB.NET"; pck.Workbook.Properties.Title = "Exported by Thảo Meo"; ExcelWorksheet ws = pck.Workbook.Worksheets.Add(SheetName); ws.Cells[WriteBeginCell].LoadFromDataTable(table, isPrintHeader); pck.Save(passwordFile); } if (isOpenFileExcel) { Process.Start(fullPathFileName); } }
Thanks for waching!