В этом разделе приведены необходимые сведения о том, как фильтровать данные в таблице Excel с помощью C#. В примере кода показано, как добавить фильтры в Excel с помощью C# в файл XLSX. Более того, вы можете создать динамический фильтр в электронной таблице Excel с помощью C#, выполнив несколько простых шагов.
Действия по фильтрации данных в таблице Excel с использованием С#
- Получите пакет Aspose.Cells for .NET с сайта NuGet.org.
- Импортировать пространство имен Aspose.Cells в проект
- Создайте экземпляр и установите объект лицензии с помощью метода SetLicense.
- Создайте Workbook с нуля
- Вставить данные на первый рабочий лист в рабочей книге
- Задайте диапазон AutoFilter и добавьте пользовательскую фильтрацию.
- Сохранить отфильтрованные данные в файл XLSX
Динамическая фильтрация данных означает отображение только тех записей, которые соответствуют определенным критериям. Если вы хотите получить записи только для определенных фруктов (в данном случае винограда), этот пример демонстрирует функцию автофильтра Excel и помогает понять, как применять настраиваемый фильтр в Excel на C#.
Пример кода для фильтрации данных в таблице Excel с использованием С#
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#.