如何利用Python让Excel快速按条件筛选数据

 更新时间:2022年12月26日 16:23:22   作者:我叫辰辰啦  
平时总是要对Excel进行操作,整理了一下平时经常会用到的操作,下面这篇文章主要给大家介绍了关于如何利用Python让Excel快速按条件筛选数据的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

本文即使用python实现excel快速筛选数据

有一张 12 个月份的产品销售情况表。

安装所需的 Python 第三方库

xlwings 的特色:

  • xlwings 能够非常方便地读写 Excel 文件中的数据,并且能够进行单元格格式的修改
  • 可以和 Matplotlib 以及 Pandas 无缝连接
  • 可以调用 Excel 文件中 VBA 写好的程序,也可以让 VBA 调用用 Python 写的程序
  • 开源免费,一直在更新

导入 xlwings:

import xlwings as xw

通过 Python 启动 Excel 文件

1.打开 Excel 程序

app =xw.App(visible=True,add_book=False)

其中参数 visible(表示处理过程是否可视,也就是处理 Excel 的过程会不会显示出来),add_book(是否打开新的 Excel 程序,也就是是不是打开一个新的 excel 窗口)。

2.打开 Excel 文件

workbook = app.books.open("2020 XX 公司销售表汇总表.xlsx")

3.获取所有的表格

sheets_list = workbook.sheets

4.设置筛选条件

select_value = '江西省'
select_value1 = '博士'

5.新增 Sheet 存在筛选数据

qxs_excel = workbook.sheets.add(select_value)

自定义 Python 遍历 Excel 的函数

1.新建数据列表,将数据添加到列表中

range_value_list = []

2,。自定义单一 Sheet 数据读取类

    def readrange(excel):
        for i in range(2,1000): #我的数据每张 Sheet 表最多只有 1000 行,所以设置的是 1000

            #单个表格字符串
            select_sheet_value = "E"+str(i)
            select_sheet_value1 = "C"+str(i)
            #整行表格字符串
            str_sheet1 = "A"+str(i)+":"+"E"+str(i)

            select_value_sheet = excel.range(select_sheet_value).value
            select_value_sheet1 = excel.range(select_sheet_value1).value
            if select_value_sheet == select_value and select_value_sheet1 == select_value1:#这里设置搜索条件判断,这里是表示两个筛选条件同时满足才会存入数据列表
                str_value_row = excel.range(str_sheet1).value
                range_value_list.append(str_value_row)

    for excel in sheets_list:
        readrange(excel)

将数据写入新的汇总表里

1.首先写入标题数据

  qxs_excel.range("A1:F1").value = ["姓名","级别","学历","薪资","地址"]

2.循环写入数据列表数据到汇总表中

    flag = 1   #因为计算机从 0 开始,0 行已经写入标题,所以这里是 1;如果有多行标题,根据实际情况设置
    for i in range_value_list:
        flag += 1
        #整行表格字符串
        str_sheet1 = "A"+str(flag)+":"+"E"+str(flag)
        qxs_excel.range(str_sheet1).value = i

运行之后的效果如下:

总结 

到此这篇关于如何利用Python让Excel快速按条件筛选数据的文章就介绍到这了,更多相关Python Excel快速按条件筛选数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python枚举之Enum模块的原理与应用详解

    Python枚举之Enum模块的原理与应用详解

    前段时间在阅读别人的代码时,看到代码中有好多数字,虽然增加的注释,哪个值代表哪种状态,但还是看起来很难受,不优雅,如何改善这个问题呢?当然是枚举,本文将深入探讨Python枚举中的Enum模块,需要的朋友可以参考下
    2023-11-11
  • Python处理Excel表中单元格带有换行的数据问题

    Python处理Excel表中单元格带有换行的数据问题

    这篇文章主要介绍了Python处理Excel表中单元格带有换行的数据问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • 利用Python爬取可用的代理IP

    利用Python爬取可用的代理IP

    我们平时在用Python爬虫时,有时会要用到IP代理。网上有很多的免费代理IP网站,但不是所有的ip都能用,所以这篇文章教大家如何爬取可用的代理IP。
    2016-08-08
  • Python详解如何动态给对象增加属性和方法

    Python详解如何动态给对象增加属性和方法

    python是动态语⾔,动态编程语⾔是⾼级程序设计语⾔的⼀个类别,在计算机科学领域已被⼴泛应⽤。它是⼀类在 运⾏时可以改变其结构 的语⾔ :例如新的函数、对象、甚⾄代码可以被引进,已有的函数可以被删除或是其他结构上的变化
    2022-07-07
  • 关于多种方式完美解决Python pip命令下载第三方库的问题

    关于多种方式完美解决Python pip命令下载第三方库的问题

    这篇文章主要介绍了多种方式完美解决python pip命令下载第三方库的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • python实现对excel中需要的数据的单元格填充颜色

    python实现对excel中需要的数据的单元格填充颜色

    这篇文章主要介绍了python实现对excel中需要的数据的单元格填充颜色,文章围绕主题展开详细单元格填充介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-06-06
  • Python Black代码格式化终极指南

    Python Black代码格式化终极指南

    Black是一款自动化的Python代码格式化工具,旨在通过强制一致的代码格式来提高代码的可读性和维护性,本文将深入探讨Black的使用方法、高级特性以及与其他格式化工具的比较,帮助你更好地理解并成功应用Black在你的项目中
    2024-01-01
  • Python更换pip源方法过程解析

    Python更换pip源方法过程解析

    这篇文章主要介绍了Python更换pip源方法过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • Python Pygame实战之水果忍者游戏的实现

    Python Pygame实战之水果忍者游戏的实现

    大家还记得水果忍者这个游戏吗?想当年,这也是个风靡全国的游戏,基本每个人都玩过。今天小编就用Python中的Pygame库复刻这一经典游戏,需要的可以参考一下
    2022-02-02
  • python 随时间序列变动画图的方法

    python 随时间序列变动画图的方法

    这篇文章主要介绍了python 基础绘图之关于随时间序列变动的图的画法,首先大家要明白画图需要考虑的问题,如何在图中适当的显示轴标签的样式和数量,详细代码跟随小编一起看看吧
    2022-01-01

最新评论