Як фільтрувати дані в таблиці Excel за допомогою C#

У цій темі наведено необхідні відомості про те, як фільтрувати дані в таблиці Excel за допомогою C#. У прикладі коду показано, як додати фільтри в Excel за допомогою C# у файл XLSX. Крім того, ви можете створити динамічний фільтр в електронній таблиці Excel за допомогою C# за кілька простих кроків.

Кроки для фільтрації даних у таблиці Excel за допомогою C#

  1. Отримайте пакет Aspose.Cells for .NET із NuGet.org
  2. Імпортуйте простір імен Aspose.Cells до проекту
  3. Створіть і встановіть об’єкт License за допомогою методу SetLicense
  4. Створіть Workbook з нуля
  5. Вставте дані на перший аркуш книги
  6. Встановіть діапазон AutoFilter і додайте спеціальний фільтр
  7. Збережіть відфільтровані дані у файл XLSX

Динамічне фільтрування даних означає відображення лише тих записів, які відповідають певним критеріям. Якщо ви хочете отримати записи лише для певних фруктів (у цьому випадку винограду), цей приклад демонструє функцію автофільтра Excel і допоможе вам зрозуміти, як застосувати спеціальний фільтр у Excel на C#.

Зразок коду для фільтрації даних у таблиці Excel за допомогою C#

using System;
using Aspose.Cells;
namespace FilterDataInExcelTable
{
class Program
{
static void Main(string[] args)
{
//Create License object and set it at the start before using any other APIs
Aspose.Cells.License Aspose_Cells_lic = new Aspose.Cells.License();
Aspose_Cells_lic.SetLicense("Aspose.Cells.lic");
//Create an empty Excel workbook
Workbook FilteringDataWorkbook = new Workbook();
//Get the worksheet at first indexed position in the workbook - default worksheet
Worksheet FilteringDataSheet = FilteringDataWorkbook.Worksheets[0];
//Obtain the cells collection from the first sheet
Cells FilteringDataCells = FilteringDataSheet.Cells;
//Put data/values into the cells for the table
FilteringDataCells["A1"].PutValue("Fruits");
FilteringDataCells["B1"].PutValue("Total");
FilteringDataCells["A2"].PutValue("Blueberries");
FilteringDataCells["B2"].PutValue(2500);
FilteringDataCells["A3"].PutValue("Apples");
FilteringDataCells["B3"].PutValue(1100);
FilteringDataCells["A4"].PutValue("Mangoes");
FilteringDataCells["B4"].PutValue(1500);
FilteringDataCells["A5"].PutValue("Grapes");
FilteringDataCells["B5"].PutValue(1200);
FilteringDataCells["A6"].PutValue("Oranges");
FilteringDataCells["B6"].PutValue(3000);
FilteringDataCells["D1"].PutValue("Count:");
//Specify formula to E1 cell - this formula would give you count
FilteringDataCells["E1"].Formula = "=SUBTOTAL(2,B1:B6)";
//Set the range to which the specified autofilters would be applied
FilteringDataSheet.AutoFilter.Range = "A1:B6";
//Now add your desired filter to first column to select your desired data
FilteringDataSheet.AutoFilter.AddFilter(0, "Grapes");
FilteringDataSheet.AutoFilter.Refresh();
//Save Excel XLSX file
FilteringDataWorkbook.Save("FilteredData.xlsx");
}
}
}

Сегмент коду (вище) створює порожню робочу книгу, а потім вставляє дані в діапазон клітинок на першому аркуші. Код C# встановлює діапазон автоматичного фільтра Excel; він додає або застосовує спеціальний фільтр в електронній таблиці Excel. Нарешті, він зберігає відфільтровані дані у файл XLSX на диску. Вас також може зацікавити тема як створити кругову діаграму Excel на C#.

 Українська