python实战二-筛选多个Excel中数据

筛选12个月中单日销售额大于300的数据,并将符合条件数据存储到新表中。

python 复制代码
import time
from openpyxl import Workbook, load_workbook
import os
"""
筛选销售额大于300的销售数据,创建新表存储
"""
def 筛选数据(file_dir, save_dir):
    files_name = os.listdir(file_dir)
    # 创建新表格

    new_wb = Workbook()
    new_ws = new_wb.active
    header = ['销售日期', '员工工号', '销售员', '货号', '销售单号', '销量', '销售额']
    new_ws.append(header)

    # 向新的表格写入数据
    for file_name in files_name:
    wb = load_workbook(file_dir + "\\" + file_name)
    for sheet in wb.sheetnames:
        ws = wb[sheet]
        # 设置values_only=True 则可以直接得到单元格中的值
        for row in ws.iter_rows(min_row=2, values_only=True):
            if row[6] > 300: # 第7列为销售额
                new_ws.append(row)
    print('日销售额大于300的数据为 %s 行' % (new_ws.max_row - 1)) # 去除第一行标题
    # 数据保存
    if not os.path.exists(save_dir):
        os.makedirs(save_dir)

    new_wb.save(save_dir + "\\" + "单日销售额大于300.xlsx")

if __name__ == '__main__':
    开始时间 = time.time()
    筛选数据(r"D:\2021年销售明细", r"D:\2021年销售分析\日销售额大于300")
    print('筛选完成耗时:', time.time() - 开始时间, "秒")

课程总结

自动化操作Excel是自动化办公的重要组成部分。这节课我们学了通过openpyxl打开、新建、读取、修

改和保存excel表格。

sheet[]跟sheet.iter_rows()方法是读取表格数据的重点方法,append()方法则是能将获得的数据快速

插入到excel, 这几个方法都是操作excel极为常用的方法。大家一定要牢记这些方法的应用特点,相信遇

到相应的需求时都能化繁为简,快速得到自己想要的结果。

参考:

python实战一:合并多个Excel中数据

我用夸克网盘分享了

视频+源码

链接:https://pan.quark.cn/s/24656f39210f

相关推荐
yaoxin5211231 天前
211. Java 异常 - Java 异常机制总结
java·开发语言·python
Empty_7771 天前
编程之python基础
开发语言·python
疯狂吧小飞牛1 天前
Lua 中的 __index、__newindex、rawget 与 rawset 介绍
开发语言·junit·lua
寻星探路1 天前
Java EE初阶启程记13---JUC(java.util.concurrent) 的常见类
java·开发语言·java-ee
哲Zheᗜe༘1 天前
了解学习Python编程之python基础
开发语言·python·学习
落日漫游1 天前
数据结构笔试核心考点
java·开发语言·算法
麦麦大数据1 天前
F024 RNN+Vue+Flask电影推荐可视化系统 python flask mysql 深度学习 echarts
python·rnn·深度学习·vue·echarts·电影推荐
技术钱1 天前
vue3 封装图片上传预览组件支持docx、excel、pdf、图片、txt格式
vue.js·pdf·excel
寻找华年的锦瑟1 天前
Qt-配置文件(INI/JSON/XML)
开发语言·qt
HY小海1 天前
【C++】AVL树实现
开发语言·数据结构·c++