如何利用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快速按条件筛选数据内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解Python如何实现对比两个Excel数据差异

    目录 1.引言 2.代码实战 3.总结 1.引言 小丝:鱼哥,还记得上次写的把数据库的查询结果写入到excel这个脚本不. 小鱼:嗯… 可以说不记得吗 小丝:我猜你就记得. 小鱼:你…说…啥?? 小丝:我说,你记得这个脚本. 小鱼:啊? 你说去洗澡? 小丝:鱼哥,别闹,正儿八经的. 小鱼:啊… 你说还要做SPA . 小丝:鱼哥,你这… 小鱼:啊… 你问我什么时间方便? 小丝:鱼哥!!!!!!!!!!!! 小鱼:昂,咋了. 小丝:你要是再帮我写个脚本,咱就去洗澡. 小鱼:哦,洗完澡还要吃烧烤??

  • 利用Python读取Excel表内容的详细过程

    目录 用python读取excel表中的数据 这里再多说一下,np.hstack()函数和 np.vstack()函数: 总结 用python读取excel表中的数据 假如说有如下一张存储了数据的excel表,其中x1-x6是特征,y_label是特征对应的类别标签.我们想要使用python对以下数据进行数据分析,那么第一步就要先把excel表中的数据读取出来才行.这里我们主要使用到了python中的pandas库. 首先确定excel表存放的路径所在,比如我的路径是 ‘E:\relate_co

  • python使用xlsx和pandas处理Excel表格的操作步骤

    目录 一.使用xls和xlsx处理Excel表格 1.1 用openpyxl模块打开Excel文档,查看所有sheet表 1.2 通过sheet名称获取表格 1.3 获取活动表的获取行数和列数 读取xlsx文件错误:xlrd.biffh.XLRDError: Excel xlsx file: not supported 二.使用pandas读取xlsx 2.1 读取数据 2.2 使用pandas查找两个列表中相同的元素 解决ValueError: Excel file format cannot

  • 利用Python实现Excel的文件间的数据匹配功能

    我们知道Excel有一个match函数,可以做数据匹配. 比如要根据人名获取成绩 而参考表sheet1的内容如下: 要根据sheet1匹配每人的成绩,用Excel是这么写 index(Sheet1!B:B,MATCH(A2,Sheet1!A:A,0)) 意思就是获取sheet1的B列的内容,根据我的A列匹配sheet1的A列的内容 但是如何用python实现这一点呢,我写了一个函数,非常好用,分享给大家. 这个函数考虑到了匹配多个字段,多个sheet. import pandas as pd d

  • 利用Python改正excel表格数据

    目录 一.前言 二.代码实现及讲解 1.模块的导入 2.获取“数据原表”中数据 3.获取生产记录更新表中的日期和材料 4.对生产数据更新表中数据的修改 5.最后,调用函数并保存数据 三.效果展示 四.结尾 一.前言 大家好,今天我来介绍我接一个Python单子.我完成这个单子前后不到2小时.首先我接到这个单子的想法是处理Excel表,在两个表之间建立联系,并通过项目需求,修改excel表中的数据.我是运用面向过程写的,将每一步都放在了不同的函数中,下面让我来介绍一下我是怎么通过自己的思路一步一步

  • 利用python对Excel中的特定数据提取并写入新表的方法

    最近刚开始学python,正好实习工作中遇到对excel中的数据进行处理的问题,就想到利用python来解决,也恰好练手. 实际的问题是要从excel表中提取日期.邮件地址和时间,然后统计在一定时间段内某个人在某个项目上用了多少时间,最后做成一张数据透视表(这是问题的大致意思). 首先要做的就是数据提取了,excel中本身有一个text to column的功能,但是对列中规律性不好的数据处理效果很差,不能分割出想要的数据,所以我果断选择用python来完成. 要用的库一个是对excel读写处理

  • 利用python在excel里面直接使用sql函数的方法

    我们一般在Excel里面是使用数据连接属性里面写sql语句,或者vba里面利用ado组件执行sql语句. 新版的Excel里面带上了Power query的功能也可以使用Odbc.DataSource()和Odbc.Query()函数写sql语句. 今天讲一下利用Python直接在excel里面使用xlwings addin 里的一个名为sql的函数. 首先我们需要在python里面安装好xlwings模块. 执行pip/conda install xlwings命令 即可完成安装. 然后继续在

  • 利用python在excel中画图的实现方法

    一.前言 以前大学时候,学EXCEL看到N多大神利用excel画图,觉得很不可思议.今个学了一个来月python,膨胀了就想用excel画图.当然,其实用画图这个词不甚严谨,实际上是利用opencv遍历每一个像素的rgb值,再将其转化为16进制,最后调用openpyxl进行填充即可. 1.1.实现效果 效果如下图 1.2.需要用到的库的安装 需要用到库如下: import cv2 #导入OpenCV库 import xlsxwriter #利用这个调整行高列宽 import openpyxl #

  • 利用python对excel中一列的时间数据更改格式操作

    问题场景:需要将下列的交期一列的数据格式更改成2019/05/10 存货编码 尺寸 数量 交期 0 K10Y0190000X B140 200 2019-05-10 00:00:00 1 K10Y0190000X B150 200 2019-05-10 00:00:00 2 K10Y0190000X B165 100 2019-05-10 00:00:00 3 K10Y0190000X B175 300 2019-05-10 00:00:00 4 K10Y0190000X B180 200 20

  • 利用Python操作excel表格的完美指南

    目录 主旨 环境 安装模块 新建excel 单元格写入数据 合并单元格 居中显示 修改字体和颜色 总结 主旨 在日常工作中,我们会经常且频繁的使用excel表格,那么我们是否可以通过python来操作excel表格,让其自动化的来代替我们的工作呢?比如涉及到的居中.合并单元格.修改字体颜色等. 环境 linux 服务器一台,亦或者windows10电脑一台python3.7.1版本,python3.x的都可以 安装模块 操作excel需要用到的模块是“xlwt”,我们需要使用python中的pi

  • 利用Python生成Excel炫酷图表

    目录 前言 1.xlswriter库 2.生成折线图 3.生成柱状图 4.生成饼图 5.实战拓展 前言 本文对Python 自动化操作Excel并生成图表,做了详细的分析和说明 我们先来看一下python中能操作Excel的常用库对比 1.xlswriter库 XlsxWriter是一个用来写Excel2007和xlsx文件格式的python模块.它可以用来写文本.数字.公式并支持单元格格式化.图片.图表.文档配置.自动过滤等特性 优点:功能更多.文档高保真.扩展格式类型.更快并可配置 缺点:不

  • 如何利用Python处理excel表格中的数据

    目录 一.基础.常用方法 二.提高 三.出错 总结 一.基础.常用方法 1. 读取excel 1.导入模块: import xlrd 2.打开文件: x1 = xlrd.open_workbook("data.xlsx") 3.获取sheet: sheet是指工作表的名称,因为一个excel有多个工作表 获取所有sheet名字:x1.sheet_names() 获取sheet数量:x1.nsheets 获取所有sheet对象:x1.sheets() 通过sheet名查找:x1.shee

随机推荐