C#實(shí)現(xiàn)在Excel中添加篩選器并執(zhí)行篩選的操作
自動(dòng)篩選器是 Excel 中的一個(gè)基本但極其有用的功能,它可以讓你根據(jù)特定的條件來(lái)自動(dòng)隱藏和顯示你的數(shù)據(jù)。當(dāng)有大量的數(shù)據(jù)需要處理時(shí),這個(gè)功能可以幫你快速找到你需要的信息,從未更加有效地分析和處理相關(guān)數(shù)據(jù)。
下面將介紹如何使用免費(fèi).NET Excel庫(kù)在Excel中添加、應(yīng)用和刪除自動(dòng)篩選器。
本文用到的免費(fèi).NET Excel庫(kù)為 Free Spire.XLS for .NET。該庫(kù)可以通過(guò)Nuget直接安裝,或者下載后手動(dòng)添加Dll到項(xiàng)目中。
下載鏈接:https://www.e-iceblue.cn/Downloads/Free-Spire-XLS-NET.html
C# 在Excel中添加自動(dòng)篩選器
using Spire.Xls;
namespace ExcelAutoFilter
{
class Program
{
static void Main(string[] args)
{
//加載Excel文檔
Workbook workbook = new Workbook();
workbook.LoadFromFile("庫(kù)存.xlsx");
//獲取第一張工作表
Worksheet sheet = workbook.Worksheets[0];
//在指定單元格區(qū)域的標(biāo)題行創(chuàng)建自動(dòng)篩選器
sheet.AutoFilters.Range = sheet.Range["A1:H1"];
//保存生成文件
workbook.SaveToFile("添加篩選器.xlsx", ExcelVersion.Version2016);
}
}
}添加了自動(dòng)篩選器后,每個(gè)被選中的列標(biāo)題旁邊都會(huì)出現(xiàn)一個(gè)箭頭圖標(biāo)。點(diǎn)擊這些箭頭將會(huì)顯示與該列相關(guān)的所有不同值的列表。效果圖如下:

C# 在Excel中執(zhí)行日期篩選
using Spire.Xls;
using Spire.Xls.Core;
using Spire.Xls.Core.Spreadsheet.AutoFilter;
namespace DateAutoFilter
{
class Program
{
static void Main(string[] args)
{
//加載Excel文檔
Workbook workbook = new Workbook();
workbook.LoadFromFile("庫(kù)存.xlsx");
//獲取第一張工作表
Worksheet sheet = workbook.Worksheets[0];
//在工作表中添加自動(dòng)篩選器,并指定要篩選的范圍
sheet.AutoFilters.Range = sheet.Range["A1:A25"];
//獲取要篩選的列
IAutoFilter filtercolumn = sheet.AutoFilters[0];
//添加日期篩選器,篩選與2023年3月相關(guān)的數(shù)據(jù)
sheet.AutoFilters.AddDateFilter(filtercolumn, DateTimeGroupingType.Month, 2023, 3, 0, 0, 0, 0);
//執(zhí)行篩選
sheet.AutoFilters.Filter();
//保存生成文件
workbook.SaveToFile("日期篩選.xlsx", ExcelVersion.Version2016);
}
}
}如果需要對(duì)表格中某些日期的數(shù)據(jù)進(jìn)行查看和處理,可以借助日期篩選來(lái)完成。以下是篩選與2023年3月相關(guān)的數(shù)據(jù)的效果圖:

C# 在Excel中執(zhí)行自定義數(shù)字篩選
using Spire.Xls;
using Spire.Xls.Core.Spreadsheet.AutoFilter;
namespace NumberAutoFilter
{
class Program
{
static void Main(string[] args)
{
//加載Excel文檔
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"E:\PythonExcel\庫(kù)存1.xlsx");
//獲取第一張工作表
Worksheet sheet = workbook.Worksheets[0];
//在工作表中添加自動(dòng)篩選器,并指定要篩選的范圍
sheet.AutoFilters.Range = sheet.Range["G1:G25"];
//獲取要篩選的列
FilterColumn filtercolumn = (FilterColumn)sheet.AutoFilters[0];
//添加自定義篩選器,篩選150-200之間的數(shù)值
sheet.AutoFilters.CustomFilter(filtercolumn, FilterOperatorType.GreaterOrEqual, 150, true, FilterOperatorType.LessOrEqual, 200);
//執(zhí)行篩選
sheet.AutoFilters.Filter();
//保存生成文件
workbook.SaveToFile("數(shù)字篩選.xlsx", ExcelVersion.Version2016);
}
}
}使用自定義篩選來(lái)篩選數(shù)字可以設(shè)置大于、小于、介于等條件。以下是篩選出介于150-200之間的數(shù)值的效果圖:

C# 在Excel中執(zhí)行自定義文本篩選
using Spire.Xls;
using Spire.Xls.Core.Spreadsheet.AutoFilter;
namespace CustomAutoFilter
{
class Program
{
static void Main(string[] args)
{
//加載Excel文檔
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"E:\PythonExcel\庫(kù)存1.xlsx");
//獲取第一張工作表
Worksheet sheet = workbook.Worksheets[0];
//在工作表中添加自動(dòng)篩選器,并指定要篩選的范圍
sheet.AutoFilters.Range = sheet.Range["B1:B25"];
//獲取要篩選的列
FilterColumn filtercolumn = (FilterColumn)sheet.AutoFilters[0];
//添加自定義篩選器,篩選以“Q型”開(kāi)頭的數(shù)據(jù)
string strCrt = "Q型*";
sheet.AutoFilters.CustomFilter(filtercolumn, FilterOperatorType.Equal, strCrt);
//執(zhí)行篩選
sheet.AutoFilters.Filter();
//保存生成文件
workbook.SaveToFile("文本篩選.xlsx", ExcelVersion.Version2016);
}
}
}自定義篩選還可以用來(lái)篩選指定文本,以下是篩選開(kāi)頭是“Q型”的文本的效果圖:

C# 刪除Excel中的篩選器
using Spire.Xls;
namespace RemoveAutoFilter
{
class Program
{
static void Main(string[] args)
{
//加載Excel文檔
Workbook workbook = new Workbook();
workbook.LoadFromFile("添加篩選器.xlsx");
//獲取第一張工作表
Worksheet sheet = workbook.Worksheets[0];
//移除該工作表中的篩選器
sheet.AutoFilters.Clear();
//保存生成文件
workbook.SaveToFile("刪除Excel篩選器.xlsx", ExcelVersion.Version2016);
}
}
}以上是在Excel中添加、刪除自動(dòng)篩選器,以及應(yīng)用日期篩選、自定義數(shù)字和文本篩選的示例代碼。除此之外,F(xiàn)ree Spire.XLS for .NET免費(fèi)庫(kù)還提供了 AddFillColorFilter() 方法用于篩選單元格填充顏色、以及 AddFontColorFilter() 方法用于篩選字體顏色。
到此這篇關(guān)于C#實(shí)現(xiàn)在Excel中添加篩選器并執(zhí)行篩選的操作的文章就介紹到這了,更多相關(guān)C# Excel添加篩選器并執(zhí)行內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C# wpf Brush轉(zhuǎn)Hex字符串的實(shí)例代碼
這篇文章主要介紹了C# wpf Brush轉(zhuǎn)Hex字符串的實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01
C#文件復(fù)制異常:"未能找到文件"的解決方案與預(yù)防措施
在C#開(kāi)發(fā)中,文件操作是基礎(chǔ)中的基礎(chǔ),但有時(shí)最基礎(chǔ)的File.Copy()方法也會(huì)拋出令人困惑的異常,當(dāng)targetFilePath設(shè)置為D:\25Q1\MR3.6.6.1_C1.2.37_PB250623\bin\gc_data時(shí),系統(tǒng)拋出"未能找到文件"的異常,本文將深入分析這個(gè)問(wèn)題的原因,并提供全面的解決方案2025-08-08
C#利用OpenCvSharp實(shí)現(xiàn)玉米粒計(jì)數(shù)
這篇文章主要為大家詳細(xì)介紹了C#如何結(jié)合OpenCVSharp4實(shí)現(xiàn)玉米粒計(jì)數(shù),文中的示例代碼簡(jiǎn)潔易懂,具有一定的學(xué)習(xí)價(jià)值,需要的小伙伴可以參考下2023-11-11
C#從數(shù)據(jù)庫(kù)讀取圖片并保存的兩種方法
這篇文章主要介紹了C#從數(shù)據(jù)庫(kù)讀取圖片并保存的方法,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下2021-01-01
C#中的SQLCommand命令與DbTransaction事務(wù)處理
這篇文章介紹了C#中的SQLCommand命令與DbTransaction事務(wù)處理,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05
C#實(shí)現(xiàn)從Word文檔中提取指定頁(yè)面的方法詳解
這篇文章主要為大家詳細(xì)介紹了C#如何使用 代碼實(shí)現(xiàn)提取 Word 文檔中的指定頁(yè)面,文檔的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2026-02-02
C#環(huán)境下串口通信技術(shù)的技術(shù)體系與工程實(shí)踐詳解
串口通信(Serial?Communication)是工業(yè)控制、嵌入式開(kāi)發(fā)、物聯(lián)網(wǎng)領(lǐng)域最基礎(chǔ)也最持久的通信方式,本文系統(tǒng)介紹了C#環(huán)境下串口通信的核心技術(shù)與實(shí)踐方案,感興趣的小伙伴可以了解下2026-05-05

