Lọc các ô rỗng và không rỗng trong Excel bằng cách sử dụng C#

Các ô trống có thể gây ra vấn đề trong các báo cáo và phân tích Excel. Lọc chúng giúp làm sạch và tổ chức dữ liệu cho kết quả tốt hơn. Tự động hóa cách lọc các ô trống trong Excel có thể tiết kiệm thời gian và nâng cao năng suất. Chỉ với một vài dòng mã, bạn có thể xử lý các bảng tính lớn một cách nhanh chóng và chính xác. Blog này sẽ hướng dẫn bạn qua quá trình lọc các ô trống và không trống bằng C#. Hãy cùng bắt đầu!

Bài viết này đề cập đến các chủ đề sau:

Thư viện C# Excel để lọc ô trống và ô không trống

Aspose.Cells for .NET là một thư viện mạnh mẽ giúp các nhà phát triển tạo, chỉnh sửa và quản lý các tệp Excel mà không cần sử dụng Microsoft Excel. Nó cho bạn toàn quyền kiểm soát các bảng tính, bao gồm khả năng áp dụng bộ lọc cho dữ liệu.

Khi nói đến việc lọc các ô trống hoặc không trống, Aspose.Cells làm cho quá trình này trở nên đơn giản. Bạn có thể thêm một bộ lọc vào một cột cụ thể, chọn các tùy chọn trống hoặc không trống, và cập nhật bảng — tất cả thông qua mã sạch và dễ đọc. Điều này tiết kiệm thời gian và giảm sai sót so với việc chỉnh sửa thủ công.

Cho dù bạn đang xây dựng báo cáo, làm sạch dữ liệu hay chuẩn bị tóm tắt, Aspose.Cells cho phép bạn tự động hóa quá trình lọc một cách hiệu quả.

Trước khi bạn bắt đầu, hãy đảm bảo rằng bạn có các thứ sau:

Cài đặt Aspose.Cells for .NET

  1. Cài đặt qua Trình quản lý gói NuGet:

    • Mở dự án .NET của bạn trong Visual Studio.
    • Đi tới Tools → NuGet Package Manager → Manage NuGet Packages for Solution.
    • Tìm kiếm Aspose.Cells và cài đặt gói.

Hoặc chạy lệnh này trong Bảng điều khiển Trình quản lý Gói:

Install-Package Aspose.Cells
  1. Tải xuống thủ công:

Cách lọc ô trống trong C# bằng cách sử dụng Aspose.Cells

Lọc các ô trống trong Excel bằng Aspose.Cells là một quá trình đơn giản. Bạn tải tệp lên, áp dụng một bộ lọc tự động cho một vùng cụ thể, và lọc ra các mục trống. Dưới đây là cách thực hiện từng bước:

1. Tải một tệp Excel

Đầu tiên, bạn cần tải tệp Excel của mình vào một đối tượng Workbook.

// Load an existing Excel file
Workbook workbook = new Workbook("input.xlsx");
Worksheet worksheet = workbook.Worksheets[0];

2. Áp dụng AutoFilter

Đặt phạm vi mà bạn muốn áp dụng bộ lọc. Thường thì, đây là bảng hoặc khu vực dữ liệu mà bạn muốn làm sạch.

// Apply AutoFilter on the desired range
worksheet.AutoFilter.Range = "A1:C20"; // Adjust the range based on your data

3. Lọc các ô trống

Bây giờ, thêm một bộ lọc cho một cột cụ thể. Ở đây, chúng ta sẽ lọc các ô trống trong cột đầu tiên (chỉ số 0).

Phương pháp 1: Gọi hàm MatchBlanks để áp dụng bộ lọc

worksheet.AutoFilter.MatchBlanks(1);

Phương pháp 2: Gọi hàm AddFilter và đặt tiêu chí là null

worksheet.AutoFilter.AddFilter(1, null);

Phương pháp 3: Áp dụng bộ lọc cho các ô trống trong cột đầu tiên

worksheet.AutoFilter.AddFilter(0, ""); // Empty string represents blank cells
worksheet.AutoFilter.Refresh();

Cuối cùng, lưu file đã lọc.

// Save the updated file
workbook.Save("filtered_blank_cells.xlsx");

Ví dụ mã hoàn chỉnh: Lọc các ô trống trong C#

using Aspose.Cells;

// Tải tệp Excel lên
Workbook workbook = new Workbook("sample_blanks.xlsx");
Worksheet worksheet = workbook.Worksheets[0];

// Áp dụng AutoFilter cho một phạm vi cụ thể
worksheet.AutoFilter.Range = "A1:C20";

// Gọi hàm AddFilter và đặt tiêu chí thành \"\"
worksheet.AutoFilter.AddFilter(1, "");
worksheet.AutoFilter.Refresh();

// Save the output
workbook.Save("filtered_blank_cells.xlsx");
Cách lọc ô trống trong C# bằng cách sử dụng Aspose.Cells

Cách lọc ô trống trong C# sử dụng Aspose.Cells

Hiểu các lớp chính được sử dụng trong lọc

  • AutoFilter.Range Xác định phạm vi ô mà bộ lọc sẽ được áp dụng.

  • AddFilter(columnIndex, criteria) Thêm một điều kiện lọc cho một cột cụ thể. Trong trường hợp này, một chuỗi rỗng \"\" lọc các ô trống.

  • Refresh() Áp dụng và cập nhật bộ lọc dựa trên các tiêu chí đã thêm.

Lọc các ô không trống trong Excel sử dụng C#

Lọc các ô không trống bằng Aspose.Cells cũng dễ dàng như vậy. Thay vì thiết lập bộ lọc là một chuỗi rỗng, bạn có thể lọc theo tất cả các giá trị có sẵn ngoại trừ các ô trống.

// Filter out blank cells in the first column (index 0)
worksheet.AutoFilter.Filter(0, 0); // 0 represents filtering non-blank cells

Thay đổi nhỏ để chỉ lọc các ô không rỗng

Bạn có thể sử dụng phương thức MatchNonBlanks() trực tiếp. Ngoài ra, bạn có thể liệt kê thủ công các mục không rỗng đã biết nếu cần.

using Aspose.Cells;

// Tải sổ làm việc của bạn
var workbook = new Workbook("sample_blanks.xlsx");

// Tải worksheet đầu tiên trong tệp Excel
Worksheet worksheet = workbook.Worksheets[0];

// Gọi hàm MatchBlanks để áp dụng bộ lọc
worksheet.AutoFilter.MatchNonBlanks(1);

// Gọi chức năng làm mới để cập nhật bảng tính
worksheet.AutoFilter.Refresh();

// Lưu tệp Excel đã được chỉnh sửa
workbook.Save("filtered_non_blanks.xlsx");
Lọc các ô không trống trong Excel bằng cách sử dụng C#

Lọc các ô không trống trong Excel sử dụng C#

Nếu bạn muốn kiểm soát nhiều hơn (như lọc theo các giá trị văn bản cụ thể), bạn có thể sử dụng AddFilter nhiều lần với các giá trị thực thay vì một chuỗi rỗng.

Kết hợp Nhiều Bộ Lọc trong C#

Aspose.Cells for .NET cũng cho phép bạn áp dụng nhiều bộ lọc cùng một lúc. Bạn có thể lọc theo các ô trống, giá trị văn bản cụ thể hoặc số — tất cả trong cùng một phạm vi.

Điều này hữu ích khi bạn muốn:

  • Chỉ hiển thị các ô trống và một số mục cụ thể nhất định.
  • Kết hợp nhiều điều kiện trong một cột.
  • Áp dụng các bộ lọc khác nhau trên nhiều cột.

Ví dụ: Kết hợp bộ lọc

 using Aspose.Cells;
 
 // Tải tệp Excel lên
 Workbook workbook = new Workbook("sample_blanks.xlsx");
 Worksheet worksheet = workbook.Worksheets[0];

 // Đặt phạm vi AutoFilter
 worksheet.AutoFilter.Range = "A1:C20";

 // Thêm nhiều bộ lọc vào cột đầu tiên (chỉ số 0)
 worksheet.AutoFilter.AddFilter(1, "");       // Blank cells
 worksheet.AutoFilter.AddFilter(1, "AFG");    // Specific text value
 worksheet.AutoFilter.Refresh();

 // Save the result
 workbook.Save("combined_filtered.xlsx", SaveFormat.Xlsx);
Kết hợp Nhiều Bộ Lọc trong C#

Kết hợp Nhiều Bộ lọc trong C#

In this example:

  • Nó hiển thị cả hai hàng với các ô trống và các hàng mà cột mã quốc gia là “AFG”.
  • Bạn có thể thêm nhiều giá trị bộ lọc như cần thiết trước khi gọi Refresh().

Mẹo: Để lọc trên nhiều cột, đơn giản chỉ cần sử dụng AddFilter trên các chỉ số cột khác.

Nhận Giấy phép Miễn Phí

Bạn có quan tâm đến việc khám phá các sản phẩm của Aspose không? Truy cập trang license page để có được giấy phép tạm thời miễn phí. Thật dễ dàng để bắt đầu, và bạn có thể trải nghiệm đầy đủ khả năng của Aspose.Cells for .NET!

Bộ lọc Excel cho ô trống: Tài nguyên miễn phí

Bạn muốn khám phá thêm về việc làm việc với tệp Excel bằng Aspose.Cells for .NET? Hãy xem những tài nguyên miễn phí này:

  • Developer’s Guide — Tìm hiểu cách tạo, chỉnh sửa, lọc và tự động hóa các tệp Excel theo cách lập trình.
  • Free Online Applications — Thử các công cụ Excel sẵn có như chuyển đổi, kết hợp và chỉnh sửa trực tuyến.
  • API Reference — Duyệt tài liệu API hoàn chỉnh cho Aspose.Cells for .NET.
  • How-To Guides and Articles — Tìm hướng dẫn, mẹo và các trường hợp sử dụng thực tế trên blog Aspose.

Kết luận

Lọc các ô trống hoặc không trống trong Excel trở nên đơn giản và hiệu quả với Aspose.Cells for .NET. Bạn có thể tự động hóa việc dọn dẹp dữ liệu, xây dựng các báo cáo thông minh hơn và tiết kiệm hàng giờ công việc thủ công. Cho dù bạn đang làm việc với các tệp nhỏ hay các tập dữ liệu lớn, Aspose.Cells mang lại cho bạn toàn quyền kiểm soát việc lọc, định dạng và xuất tệp Excel thông qua mã.

Nếu bạn có bất kỳ câu hỏi nào hoặc cần thêm trợ giúp, vui lòng liên hệ với chúng tôi tại diễn đàn hỗ trợ miễn phí.

Xem Thêm