Python 在Excel中应用和取消多种不同类型的数据筛选

ops/2025/1/12 8:47:13/

目录

安装Python Excel处理库

Python 在 Excel 中应用文本筛选

Python 在 Excel 中应用数字筛选

Python 在 Excel 中应用字体颜色、单元格颜色或图标集筛选

Python 在 Excel 中应用日期筛选

Python 在 Excel 中应用动态日期筛选

Python 在 Excel 中筛选空单元格或非空单元格

Python 取消Excel 中的数据筛选


Excel中的筛选功能是一项非常实用的工具,它可以帮助用户根据特定条件或标准快速查找和显示相关数据。当应用筛选时,Excel会自动隐藏不符合条件的行,使用户能够快速聚焦于最重要的信息,从而提升数据分析的效率和准确性。在这篇文章中,我们将探讨如何使用 Python 在 Excel 中应用多种不同类型的数据筛选和取消数据筛选。主要涵盖以下内容:

  • Python 在 Excel 中应用文本筛选
  • Python 在 Excel 中应用数字筛选
  • Python 在 Excel 中应用字体颜色、单元格颜色或图标集筛选
  • Python 在 Excel 中应用日期筛选
  • Python 在 Excel 中应用动态日期筛选
  • Python 在 Excel 中筛选空单元格或非空单元格
  • Python 取消Excel 中的数据筛选

安装Python Excel处理库

要使用Python在 Excel 中应用和取消数据筛选,可以使用 Spire.XLS for Python 库。它支持在 Python 应用程序中创建、读取、编辑和转换 Excel 文件。使用该库,你可以在Excel中应用多种不同类型的数据筛选,也可以取消Excel中已有的数据筛选。

你可以通过在终端中运行以下命令从 PyPI 安装 Spire.XLS for Python:

python">pip install Spire.Xls

Python 在 Excel 中应用文本筛选

Excel中的文本筛选是一种基于文本内容的筛选方式,用户可以通过它筛选出符合特定条件的文本数据。它主要用于包含文字的列,比如客户名称、产品名称等,帮助用户快速查找所需的信息。

通过 Spire.XLS for Python 提供的 AddFilter() 函数,你可以在Excel 工作表中添加一个或多个文本筛选器。

以下代码展示了如何在 Python 中应用文本筛选,以筛选包含特定文字的单元格:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("销售.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:F11"]# 创建一个筛选器,以筛选数据区域第1列中包含"笔记本"的单元格
sheet.AutoFilters.AddFilter(0, "笔记本")# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为新文件
workbook.SaveToFile("文本筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python <a class=Excel文字筛选" height="193" src="https://i-blog.csdnimg.cn/direct/6851f4f0d07f42868036775b10868e67.png" width="750" />

有时,你可能想要筛选以特定文字开头的单元格。要实现这一功能,你可以使用 CustomFilter() 函数。以下代码展示了如何使用 Python 在Excel中应用自定义文本筛选,来筛选以特定文字开头的单元格:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("销售.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:F11"]# 添加自定义筛选器,以筛选数据区域第5列中以"赵"开头的单元格
sheet.AutoFilters.CustomFilter(4, FilterOperatorType.Equal, String("赵*"))# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("自定义文本筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python Excel自定义文字筛选

Python 在 Excel 中应用数字筛选

Excel中的数字筛选是一种针对数字数据的筛选功能,它允许用户根据特定的数值条件筛选数据。这在处理包含大量数字的表格时尤其有用,如销售数据、库存数量等。

要向 Excel 工作表添加数字筛选,你可以使用 CustomFilter() 函数。以下代码展示了如何使用Python在 Excel 中应用数字筛选,以筛选大于某个特定数字的单元格:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("销售.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:F11"]# 添加自定义筛选器,以筛选数据区域第2列中值大于1000的单元格
sheet.AutoFilters.CustomFilter(1, FilterOperatorType.GreaterThan, Int32(1000))# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("数字筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python <a class=Excel数字筛选" height="193" src="https://i-blog.csdnimg.cn/direct/06682e5a44e7401bb91f6e63d3b8021a.png" width="750" />

除了“大于”运算符之外,你还可以使用其他运算符来筛选数字,例如“小于”、“等于”、“小于或等于”等等。以下代码展示了如何使用 Python 在Excel中筛选介于两个特定数字之间的单元格:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("销售.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:F11"]# 添加自定义筛选器,以筛选数据区域第2列中值介于100(含) 和 800(含)之间的单元格
sheet.AutoFilters.CustomFilter(1, FilterOperatorType.GreaterOrEqual, Int32(100), True, FilterOperatorType.LessOrEqual, Int32(800))# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("数字筛选1.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python 筛选Excel中介于特殊数字之间的数据

Python 在 Excel 中应用字体颜色、单元格颜色或图标集筛选

Excel中的基于字体颜色、单元格颜色或图标集的筛选是一种视觉筛选功能,可以帮助用户快速识别出具有相同格式或视觉特征的数据。

要应用单元格颜色筛选,你可以使用 AddFillColorFilter() 函数。以下代码展示了如何使用 Python 在Excel中进行基于单元格颜色的筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("销售.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域区域
sheet.AutoFilters.Range = sheet.Range["A1:F11"]# 创建一个筛选器,以筛选数据区域第1列中填充特定背景颜色的单元格
sheet.AutoFilters.AddFillColorFilter(0, sheet.Range["B2"].Style.Color)# 应用筛选
sheet.AutoFilters.Filter()# 将结果工作簿保存到文件
workbook.SaveToFile("单元格颜色筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python Excel单元格背景颜色筛选

要应用字体颜色筛选,你可以使用 AddFontColorFilter() 函数。以下代码展示了如何使用 Python 在Excel中进行基于字体颜色(红色)的筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("字体颜色.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:D5"]# 创建一个筛选器,以筛选数据区域第1列中具有特定字体颜色的单元格
sheet.AutoFilters.AddFontColorFilter(0, Color.get_Red())# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("字体颜色筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

要应用图标集筛选,你可以使用 AddIconFilter() 函数。以下代码展示了如何使用 Python 在Excel中进行基于图标集的筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("图标集.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:C5"]# 创建一个筛选器,以筛选数据区域第3列中具有特定图标集的单元格
sheet.AutoFilters.AddIconFilter(2, IconSetType.ThreeArrows, 2)# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("图标集筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python 在 Excel 中应用日期筛选

Excel中的日期筛选功能允许用户基于日期条件筛选数据,以便轻松地查看和分析特定时间范围的数据。此功能对于处理包含日期信息的数据集(如销售记录、项目截止日期、考勤记录等)非常有用。

你可以使用 AddDateFilter() 函数在Excel中添加不同类型的日期筛选器。以下代码展示了如何使用Python在Excel中应用基于特定月份(2024年6月)的日期筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("销售.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:F11"]# 添加一个日期筛选器,以筛选数据区域第3列中含特定月份(2024年6月)的日期的单元格
sheet.AutoFilters.AddDateFilter(2, DateTimeGroupingType.Month, 2024, 6, 0, 0, 0, 0)# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("日期筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python <a class=Excel日期筛选" height="195" src="https://i-blog.csdnimg.cn/direct/e73c2cd9223e433d8e8dffae99c833db.png" width="750" />

Python 在 Excel 中应用动态日期筛选

Excel中的动态日期筛选是一种特殊的筛选功能,它允许用户根据相对日期范围动态筛选数据,而不是仅基于静态日期。这种筛选功能可以自动适应当前日期,便于实时查看和分析数据。

要应用动态日期筛选,你可以使用 DynamicFilter() 函数。以下代码展示了如何使用Python在Excel中应用基于当前年份的动态日期筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("销售.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:F11"]# 添加一个动态筛选器,以筛选数据区域第3列中含当前年份的日期的单元格
sheet.AutoFilters.DynamicFilter(2, DynamicFilterType.ThisYear)# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("动态日期筛选.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python Excel动态日期筛选

Python 在 Excel 中筛选空单元格或非空单元格

Excel中的空单元格可能对数据分析产生影响,导致计算不准确,进而影响数据的分析结果。你可以使用 MatchNonBlanks() 函数来实现仅筛选非空单元格。以下代码展示了如何使用Python在Excel中应用非空单元格筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("测试.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:E7"]# 添加一个非空筛选器,以筛选数据区域第1列中的非空单元格
sheet.AutoFilters.MatchNonBlanks(0)# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("筛选非空单元格.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

Python 筛选Excel非空单元格

如果需要筛选空单元格,你可以使用 MatchBlanks() 函数。以下代码展示了如何使用Python在Excel中应用空单元格筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("测试.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 指定要筛选的数据区域
sheet.AutoFilters.Range = sheet.Range["A1:E7"]# 添加一个空筛选器,以筛选数据区域第1列中的空单元格
sheet.AutoFilters.MatchBlanks(0)# 应用筛选
sheet.AutoFilters.Filter()# 将筛选结果保存为文件
workbook.SaveToFile("筛选空单元格.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

Python 取消Excel 中的数据筛选

如果不再需要筛选,你可以使用 Clear() 函数将其从工作表中清除。以下代码展示了如何使用 Python 清除Excel 工作表中的所有筛选:

python">from spire.xls import *
from spire.xls.common import *# 创建一个Workbook对象
workbook = Workbook()
# 加载Excel文件
workbook.LoadFromFile("动态日期筛选.xlsx")# 获取第一个工作表
sheet = workbook.Worksheets[0]# 删除工作表中的所有筛选
sheet.AutoFilters.Clear()# 将结果工作簿保存为文件
workbook.SaveToFile("取消筛选.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

以上就是使用Python在Excel中应用各种不同类型的数据筛选,以及如何清除Excel中现有的数据筛选的全部内容。本文完结。


http://www.ppmy.cn/ops/108849.html

相关文章

PyTorch维度操作的函数介绍

在 PyTorch 中&#xff0c;操作张量的维度是常见的需求&#xff0c;特别是在处理多维数据时。PyTorch 提供了一系列函数来操作张量的维度&#xff0c;包括改变维度顺序、添加或删除维度、扩展维度等。下面是一些常用的维度操作函数及其示例代码。 1. view() 作用&#xff1a;…

【WebGIS实例】(16)GeoServer 自定义样式 - 渲染矢量数据

1. 前言 本篇博客将会分享一系列的 GeoServer 样式&#xff0c;通过这些样式预先在服务端完成数据渲染&#xff0c;让前端应用更便捷的加载数据服务。 2. 面矢量 示例数据&#xff1a; {type: FeatureCollection,features: [{type: Feature,properties: {分类字段: 字段一…

Linux(1)--Linux简介

文章目录 1. 基本概念2. 版本2.1 RedHat红帽2.2 CentOS2.3 Ubuntu2.4 Debian2.5 Kali Linux 3. Linux应用场景 1. 基本概念 Linux&#xff0c;全称GNU/LInux&#xff0c;本质上是一个类UNIX系统。 普通用户使用Linux的比较少&#xff0c;大家普遍比较熟悉微软公司的Windows和…

[Python学习日记-11] Python中的流程控制(while)

[Python学习日记-11] Python中的流程控制&#xff08;while&#xff09; 简介 while 语法 break 和 continue 语法 while ... else ... 语法 死循环&#xff08;dead loop&#xff09; 简介 从上一篇文章[Python学习日记-10] Python中的流程控制&#xff08;if...else...&…

【ARM compiler】生成ELF文件中包含了那些内容

【更多软件使用问题请点击亿道电子官方网站】 文档目标&#xff1a;用于了解ARM compiler生成的ELF文件中存储的内容进行了解 问题场景&#xff1a;ELF文件主要用于通过调试软件对于代码的运行顺序和数据链接等内容进行分析。了解一下ARM compiler生成ELF文件包含那些内容。 软…

排序算法(冒泡排序,选择排序,插入排序,快速排序)

冒泡排序 相邻的数据两两比较&#xff0c;小的放前面&#xff0c;大的放后面 package seach;public class A04_BubbleDemo1 {public static void main(String[] args) {int[] arr {2,4,3,1,6,8,9,5};//外循环&#xff1a;表示我要执行多少论 如果有n个数据&#xff0c;那么执…

使用 Python 读取 Excel 数据的详细教程

使用 Python 读取 Excel 数据的详细教程 Python 提供了多种读取 Excel 文件的方式&#xff0c;最常用的库是 pandas 和 openpyxl。下面我将详细介绍如何使用这两个库来读取 Excel 文件&#xff0c;并包含一些实用示例&#xff0c;帮助你撰写博客。 1. 安装必要的依赖 首先&a…

2024国赛数学建模ABC题思路模型

完整的思路模型请查看文末名片 完整的思路模型请查看文末名片 完整的思路模型请查看文末名片