Trong bài viết này, bạn sẽ học cách tạo tệp Excel XLS/XLSX trong C# mà không cần cài đặt MS Office.

Tạo tệp Excel trong API C#

Các bảng tính ngày nay đã trở thành một phần thiết yếu trong việc lưu giữ, sắp xếp và phân tích dữ liệu. Các bảng tính, chẳng hạn như MS Excel, có khả năng thực hiện các phép tính và sắp xếp, tạo đồ thị hoặc biểu đồ, tạo ngân sách và thực hiện nhiều nhiệm vụ kế toán hoặc phân tích dữ liệu khác. Vì ngày nay các giải pháp tự động được sử dụng nhiều hơn trong kinh doanh nên xu hướng tạo và thao tác với các tài liệu Excel (XLS/XLSX) đã xuất hiện và phát triển với tốc độ chóng mặt. Trường hợp sử dụng này đã làm tăng nhu cầu có giải pháp tự động hóa Excel.

Theo kịch bản đã đề cập ở trên, bài viết toàn diện này nhằm giới thiệu cho bạn một số tính năng cơ bản để tự động hóa Excel trong các ứng dụng C# .NET.

API C# để tạo tệp Excel - Tải xuống miễn phí

Để làm việc với các tài liệu Excel, chúng tôi sẽ sử dụng Aspose.Cells for .NET, một API mạnh mẽ để tạo, đọc và thao tác với các tài liệu bảng tính bao gồm các tệp XLS và XLSX. Bạn có thể tải xuống hoặc cài đặt API bằng một trong các cách sau:

Sử dụng Trình quản lý gói NuGet

Thư viện tự động hóa C# Excel

Sử dụng Bảng điều khiển quản lý gói

PM> Install-Package Aspose.Cells

Tạo Excel XLS hoặc XLSX trong C#

Tệp Excel còn được gọi là Sổ làm việc bao gồm một hoặc nhiều trang tính chứa các hàng và cột để chứa dữ liệu. Do đó, sổ làm việc đóng vai trò là nơi chứa các trang tính trong tệp Excel. Vì vậy, để tạo một tệp Excel, trước tiên bạn sẽ tạo một sổ làm việc và sau đó là các trang tính trong sổ làm việc đó. Sau đây là các bước để tạo tệp Excel bằng Aspose.Cells for .NET.

  • Tạo một thể hiện của lớp Workbook.
  • Truy cập trang tính đầu tiên (được tạo theo mặc định) của sổ làm việc.
  • Truy cập (các) ô mong muốn của trang tính và đặt giá trị vào (các) ô đó.
  • Lưu sổ làm việc dưới dạng tệp XLS hoặc XLSX.

Mẫu mã sau đây cho biết cách tạo tệp Excel XLSX bằng C#.

// Khởi tạo một đối tượng Workbook đại diện cho tệp Excel.
Workbook wb = new Workbook();

// Khi bạn tạo một sổ làm việc mới, "Sheet1" mặc định sẽ được thêm vào sổ làm việc.
Worksheet sheet = wb.Worksheets[0];

// Truy cập ô "A1" trong trang tính.
Cell cell = sheet.Cells["A1"];

// Nhập "Xin chào thế giới!" văn bản vào ô "A1".
cell.PutValue("Hello World!");

// Lưu Excel dưới dạng tệp .xlsx.
wb.Save("Excel.xlsx", SaveFormat.Xlsx);

đầu ra

Tạo tệp Excel trong C#

Ghi dữ liệu vào tệp Excel XLSX trong C#

Trong trường hợp muốn chỉnh sửa, ghi dữ liệu vào file Excel có sẵn, bạn cũng có thể thực hiện theo cách tương tự. Chỉ cần tải tài liệu bảng tính Excel nguồn bằng cách sử dụng đối tượng Workbook và truy cập các trang tính và ô mong muốn. Sau đây là các bước để chỉnh sửa một tệp Excel hiện có.

  • Mở tệp Excel trong đối tượng FileStream.
  • Tạo một thể hiện của Workbook và khởi tạo nó với đối tượng FileStream.
  • Truy cập các trang tính và ô bằng cách sử dụng các lớp WorksheetCell tương ứng.
  • Lưu sổ làm việc dưới dạng tệp Excel .xlsx.

Mẫu mã sau đây cho biết cách chỉnh sửa và ghi dữ liệu vào tệp Excel XLSX hiện có trong C#.

// Khởi tạo một đối tượng Workbook đại diện cho tệp Excel.
Workbook wb = new Workbook("Excel.xlsx");

// Truy cập "Sheet1" từ sổ làm việc.
Worksheet sheet = wb.Worksheets[0];

// Truy cập ô "A1" trong trang tính.
Cell cell = sheet.Cells["A1"];

// Nhập "Xin chào thế giới!" văn bản vào ô "A1".
cell.PutValue("The cell's value is updated.");

// Lưu tệp Excel dưới dạng .xlsx.
wb.Save("Excel_updated.xlsx", SaveFormat.Xlsx);

C# Tạo tệp Excel với Biểu đồ hoặc Đồ thị

Bảng tính Excel cung cấp một cách tốt để phân tích hoặc trình bày dữ liệu một cách trực quan bằng cách sử dụng đồ thị và biểu đồ. Aspose.Cells for .NET cung cấp một tập hợp đầy đủ các lớp để tạo và thao tác nhiều biểu đồ trong bảng tính Excel trong đó mỗi lớp được sử dụng để thực hiện một số tác vụ cụ thể.

Để tạo biểu đồ trong tệp Excel, bạn sẽ phải làm theo các bước sau:

  • Thêm một số dữ liệu (sẽ được dùng làm nguồn dữ liệu) vào trang tính bằng cách truy nhập các ô của trang tính.
  • Thêm đối tượng biểu đồ mới vào trang tính bằng cách sử dụng bộ sưu tập Worksheet.Charts bằng cách chuyển loại biểu đồ bằng phép liệt kê ChartType.
  • Lấy biểu đồ mới tạo từ bộ sưu tập trong đối tượng Chart.
  • Chỉ định phạm vi của các ô để cung cấp nguồn dữ liệu cho đối tượng biểu đồ.
  • Lưu sổ làm việc dưới dạng tệp Excel .xlsx.

Mẫu mã sau đây cho biết cách tạo tệp Excel XLSX và thêm biểu đồ trong C#.

// Khởi tạo một đối tượng Workbook đại diện cho tệp Excel.
Workbook wb = new Workbook();

// Thêm một trang tính mới vào đối tượng Excel.
int sheetIndex = wb.Worksheets.Add();

// Lấy tham chiếu của trang tính mới được thêm vào bằng cách chuyển chỉ mục trang tính của nó.
Worksheet worksheet = wb.Worksheets[sheetIndex];

// Thêm giá trị giả vào ô.
worksheet.Cells["A1"].PutValue(50);
worksheet.Cells["A2"].PutValue(100);
worksheet.Cells["A3"].PutValue(150);
worksheet.Cells["B1"].PutValue(4);
worksheet.Cells["B2"].PutValue(20);
worksheet.Cells["B3"].PutValue(50);

// Thêm biểu đồ vào trang tính.
int chartIndex = worksheet.Charts.Add(Charts.ChartType.Pyramid, 5, 0, 15, 5);

// Truy cập phiên bản của biểu đồ mới được thêm vào.
Charts.Chart chart = worksheet.Charts[chartIndex];

// Thêm SeriesCollection (nguồn dữ liệu biểu đồ) vào biểu đồ từ ô "A1" đến "B3".
chart.NSeries.Add("A1:B3", true);

// Lưu tệp Excel.
wb.Save("Excel_Chart.xlsx", SaveFormat.Xlsx);

đầu ra

Tạo biểu đồ trong Excel bằng C#

Tìm hiểu thêm về cách tạo biểu đồ trong trang tính Excel bằng C#.

Tạo tệp XLSX Excel với Bảng trong C#

Bạn cũng có thể tạo bảng từ phạm vi ô trong trang tính Excel và thêm một hàng cho tổng (tổng, số đếm, v.v.) trong bảng. Sau đây là các bước để tạo tệp Excel (XLSX) và thêm bảng trong C#:

  • Tải một sổ làm việc Excel hoặc tạo một sổ làm việc mới bằng cách sử dụng lớp Sổ làm việc.
  • Thêm dữ liệu vào các ô của trang tính.
  • Thêm ListObject mới vào trang tính.
  • Đặt thuộc tính ListObject.ShowTotals thành true.
  • Tính tổng và lưu sổ làm việc dưới dạng tệp Excel .xlsx.

Mẫu mã sau đây cho biết cách tạo bảng trong tệp Excel bằng C#.

// Khởi tạo một đối tượng Workbook đại diện cho tệp Excel.
Workbook wb = new Workbook();

// Nhận bảng tính đầu tiên.
Worksheet sheet = wb.Worksheets[0];

// Lấy bộ sưu tập ô của Worksheet
Cells cells = sheet.Cells;

// Đặt giá trị cho các ô
Aspose.Cells.Cell cell = cells["A1"];
cell.PutValue("Employee");
cell = cells["B1"];
cell.PutValue("Quarter");
cell = cells["C1"];
cell.PutValue("Product");
cell = cells["D1"];
cell.PutValue("Continent");
cell = cells["E1"];
cell.PutValue("Country");
cell = cells["F1"];
cell.PutValue("Sale");

cell = cells["A2"];
cell.PutValue("David");
cell = cells["A3"];
cell.PutValue("David");
cell = cells["A4"];
cell.PutValue("David");
cell = cells["A5"];
cell.PutValue("David");
cell = cells["A6"];
cell.PutValue("James"); 

cell = cells["B2"];
cell.PutValue(1);
cell = cells["B3"];
cell.PutValue(2);
cell = cells["B4"];
cell.PutValue(3);
cell = cells["B5"];
cell.PutValue(4);
cell = cells["B6"];
cell.PutValue(1); 

cell = cells["C2"];
cell.PutValue("Maxilaku");
cell = cells["C3"];
cell.PutValue("Maxilaku");
cell = cells["C4"];
cell.PutValue("Chai");
cell = cells["C5"];
cell.PutValue("Maxilaku");
cell = cells["C6"];
cell.PutValue("Chang"); 

cell = cells["D2"];
cell.PutValue("Asia");
cell = cells["D3"];
cell.PutValue("Asia");
cell = cells["D4"];
cell.PutValue("Asia");
cell = cells["D5"];
cell.PutValue("Asia");
cell = cells["D6"];
cell.PutValue("Europe"); 


cell = cells["E2"];
cell.PutValue("China");
cell = cells["E3"];
cell.PutValue("India");
cell = cells["E4"];
cell.PutValue("Korea");
cell = cells["E5"];
cell.PutValue("India");
cell = cells["E6"];
cell.PutValue("France"); 


cell = cells["F2"];
cell.PutValue(2000);
cell = cells["F3"];
cell.PutValue(500);
cell = cells["F4"];
cell.PutValue(1200);
cell = cells["F5"];
cell.PutValue(1500);
cell = cells["F6"];
cell.PutValue(500); 

// Thêm một Đối tượng Danh sách mới vào trang tính
Tables.ListObject listObject = sheet.ListObjects[sheet.ListObjects.Add("A1", "F6", true)];

// Thêm kiểu mặc định vào bảng
listObject.TableStyleType = Tables.TableStyleType.TableStyleMedium10;

// Hiển thị Tổng số
listObject.ShowTotals = true;

// Đặt loại tính toán của trường Quý
listObject.ListColumns[1].TotalsCalculation = Tables.TotalsCalculation.Count;

// Lưu tệp Excel.
wb.Save("Excel_Table.xlsx", SaveFormat.Xlsx);

đầu ra

Tạo bảng trong Excel Worksheet trong C#

Tìm hiểu thêm về cách làm việc với các bảng trong trang tính Excel bằng C#.

C# .NET API để tạo tệp Excel - Nhận giấy phép miễn phí

Bạn có thể sử dụng Aspose.Cells for .NET mà không bị giới hạn đánh giá bằng cách nhận giấy phép tạm thời miễn phí.

Sự kết luận

Trong bài viết này, bạn đã học cách tạo các tệp Excel từ đầu bằng C#. Ngoài ra, bạn đã biết cách chèn dữ liệu vào trang tính, tạo biểu đồ và chèn bảng vào tệp Excel. Bạn có thể xem tài liệu của Aspose.Cells for .NET để tìm hiểu các tính năng nâng cao để thao tác với các tệp Excel trong C#.

Bài viết liên quan

Tạo và sắp xếp bảng tổng hợp trong trang tính ExcelTạo tệp Excel trong Ứng dụng Node.jsTắt Trình kiểm tra Tương thích trong Tệp Excel bằng C#
Tắt Trình kiểm tra Tương thích Excel trong JavaTắt Trình kiểm tra tương thích Excel trong PythonĐọc tệp Excel bằng C#
Đọc tệp Excel bằng JavaĐọc tệp Excel bằng Python