Excel管理控件Aspose.Cells功能教程——使用C#在Excel文件(XLSX / XLS)中添加或删除自动筛选

翻译|使用教程|编辑:李显亮|2020-09-17 14:04:46.357|阅读 26 次

概述:XLSX和XLS文件格式经常用于处理大量数据。在本文中,我们将探讨使用Aspose.cells for .NET在C#中的自动过滤器进行数据过滤。

# 正版采购狂欢节,企业采购正当时 #

相关链接:

Aspose.Cells for .NET是Excel电子表格编程API,可加快电子表格的管理和处理任务,支持构建能够生成,修改,转换,呈现和打印电子表格的跨平台应用程序。同时不依赖于Microsoft Excel或任何Microsoft Office Interop组件。

XLSX和XLS文件格式经常用于处理大量数据。同样,自动筛选器用于组织Excel文件中的数据。使用Aspose.Cells for .NET API 在Excel文件中轻松添加或删除自动筛选。过滤器可用于量化一些数据以提取一些有意义的信息。例如,一个组织想要过滤销售量低的月份,以设计和改进其策略。

在本文中,我们将探讨使用C#中的自动过滤器进行数据过滤:

  • 使用C#在Excel文件中的单元格上应用自动筛选
  • 使用C#在XLSX中添加日期自动筛选
  • 使用C#在XLSX中添加动态日期自动筛选
  • 使用C#在XLSX中应用自定义编号自动筛选
  • 使用C#将自定义自动筛选器与包含一起添加
  • 使用C#在Excel中删除或删除自动筛选

点击下载Aspose.Cells for .NET/a>

整合所有格式API处理控件Aspose永久授权正在慧都网火热销售中,新购乐享85折起!联系慧都客服立马1分钟了解全部咨询!

使用C#在Excel文件中的单元格上应用自动筛选

可以对Excel文件中特定范围的单元格应用自动筛选。当单元格包含数值时,这使您可以按升序或降序对值以及其他数字过滤器进行排序。需要按照以下步骤使用C#在Excel文件中应用自动筛选:

  1. 打开一个Excel文件并访问worksheet
  2. 通过指定特定的单元格范围来创建自动筛选
  3. 保存输出XLS / XLSX文件

该代码段显示了如何使用C#在Excel文件中的单元格上应用自动筛选:

// Instantiating a Workbook object
// Opening the Excel file through the file stream
Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook(dataDir + "book1.xls");

// Accessing the first worksheet in the Excel file
Aspose.Cells.Worksheet worksheet = workbook.Worksheets[0];

// Creating AutoFilter by giving the cells range of the heading row
worksheet.AutoFilter.Range = "A1:B1";

// Saving the modified Excel file
workbook.Save(dataDir + "output.xlsx");

可以在下面的屏幕截图中注意到自动过滤器已添加到源XLSX文件中:

Excel管理控件Aspose.Cells功能教程——使用C#在Excel文件(XLSX / XLS)中添加或删除自动筛选

使用C#在XLSX中添加日期自动筛选

Excel文件中的数据通常包含与日期有关的信息。有时可能需要根据日期确定的不同时间段浏览信息。例如,让我们考虑需要过滤与2018年1月相关的数据的情况,那么需要执行以下步骤:

  1. 加载输入电子表格
  2. 访问工作表
  3. 添加日期过滤器并保存输出文件

以下代码示例遵循这些步骤,并说明如何使用C#在Excel文件中添加日期自动筛选:

// Instantiating a Workbook object
// Opening the Excel file through the file stream
Workbook workbook = new Workbook(dataDir + "Date.xlsx");

// Accessing the first worksheet in the Excel file
Worksheet worksheet = workbook.Worksheets[0];

// Call AddDateFilter function to apply the filter
worksheet.AutoFilter.AddDateFilter(0, DateTimeGroupingType.Month, 2018, 1, 0, 0, 0, 0);

// Call refresh function to update the worksheet
worksheet.AutoFilter.Refresh();

// Saving the modified Excel file
workbook.Save(dataDir + "FilteredDate.xlsx");

使用C#在XLSX中添加动态日期自动筛选

正如我们已经讨论过的基于日期过滤数据的方案。但是,在某些情况下,日期方案也可能更通用。例如,无论哪个年份,我们都需要过滤掉1月的数据。通过使用以下步骤,可以使用动态日期过滤器轻松满足这些要求:

  1. 加载输入的XLSX文件
  2. 访问工作表
  3. 将动态过滤设置为一月
  4. 保存输出Excel工作表

本示例是上述示例的继续,下面的代码片段显示了如何使用C#在Excel文件中添加动态日期自动过滤器:

// Instantiating a Workbook object
// Opening the Excel file through the file stream
Workbook workbook = new Workbook(dataDir + "Date.xlsx");

// Accessing the first worksheet in the Excel file
Worksheet worksheet = workbook.Worksheets[0];

// Call DynamicFilter function to apply the filter
worksheet.AutoFilter.DynamicFilter(0, DynamicFilterType.January);

// Call refresh function to update the worksheet
worksheet.AutoFilter.Refresh();

// Saving the modified Excel file
workbook.Save(dataDir + "FilteredDynamicDate.xlsx");

使用C#在XLSX中应用自定义编号自动筛选

可以使用.NET API的Aspose.Cells根据自定义数字范围过滤数据。例如,当一家公司需要访问多少员工达到了销售目标时。同样,这种过滤技术可以提供很多可能性。让我们假设一种情况,我们需要过滤所有数字在5到10之间(含5和10)的数据,那么您需要执行以下步骤:

  1. 实例化工作簿对象并加载输入文件
  2. 在特定的工作表中添加自定义数字过滤器
  3. 保存输出Excel文件

基于这些步骤,以下代码显示了如何使用C#添加自定义编号自动筛选:

// Instantiating a Workbook object
// Opening the Excel file through the file stream
Workbook workbook = new Workbook(dataDir + "Number.xlsx");

// Accessing the first worksheet in the Excel file
Worksheet worksheet = workbook.Worksheets[0];

// Call Custom function to apply the filter
worksheet.AutoFilter.Custom(0, FilterOperatorType.GreaterOrEqual, 5, true, FilterOperatorType.LessOrEqual, 10);

// Call refresh function to update the worksheet
worksheet.AutoFilter.Refresh();

// Saving the modified Excel file
workbook.Save(dataDir + "FilteredNumber.xlsx");

使用C#将自定义自动筛选器与包含一起添加

从自定义编号自动过滤器向前迈进了一步,让我们学习如何添加自定义自动过滤器,可以使用包含过滤器运算符来跟踪特定文本。搜索数据中部分或全部存在任何文本的单词可能会很有用。应该按照以下步骤实现这些要求:

  1. 使用数据加载输入的Excel文件
  2. 指定 AutoFilter范围和FilterOperatorType
  3. 保存输出XLSX文件

下面的代码段显示了如何使用C#将Contains添加到Custom AutoFilter:

// Instantiating a Workbook object containing sample data
Workbook workbook = new Workbook(dataDir + "sourseSampleCountryNames.xlsx");

// Accessing the first worksheet in the Excel file
Worksheet worksheet = workbook.Worksheets[0];

// Creating AutoFilter by giving the cells range
worksheet.AutoFilter.Range = "A1:A18";

// Initialize filter for rows containing string "Ba"
worksheet.AutoFilter.Custom(0, FilterOperatorType.Contains, "Ba");

//Refresh the filter to show/hide filtered rows
worksheet.AutoFilter.Refresh();

// Saving the modified Excel file
workbook.Save(dataDir + "outSourseSampleCountryNames.xlsx");

使用C#在Excel中删除或删除自动筛选

当我们了解了使用C#在Excel文件中添加自动筛选的不同情况时,让我们看看另一种方法。从Excel中删除或删除自动筛选的用例同样重要且至关重要。您需要按照以下步骤从XLSX文件中删除所有自动过滤器:

  1. 加载输入的XLSX文件
  2. 遍历每个工作表并删除自动过滤器
  3. 保存输出文件

以下代码段显示了如何使用C#从Excel文件中删除自动过滤器:

// Instantiating a Workbook object
// Opening the Excel file
Workbook workbook = new Workbook(dataDir + "output.xlsx");
// Iterate through each worksheet
foreach (var sheet in workbook.Worksheets)
{
    // Remove AutoFilters
    sheet.RemoveAutoFilter();
}
// Save the workbook
workbook.Save(dataDir + "AutoFilter_Removed.xlsx", SaveFormat.Xlsx);

还想要更多吗?您可以点击阅读【2020 · Aspose最新资源整合】查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
title
相关厂商
相关产品
Aspose.Cells for .NET

专业的电子表格控件,无需MS Excel也可满足一切Excel表格功能。

在线
客服
咨询
电话
400-700-1020
在线
QQ
购物车 反馈 返回
顶部
在线客服系统
live chat