夜雨聆风学习资料网

ARTICLE · 1182250

每天手动汇总Excel要2小时?我用Python写了个脚本,现在3分钟搞定.

每天手动汇总Excel要2小时?我用Python写了个脚本,现在3分钟搞定.

每天早上到公司,第一件事是不是打开那几个Excel文件,复制、粘贴、刷新透视表、改日期?做数据的朋友应该都懂:数据每天在变,报表格式永远不变,但手动更新这件事,一天都躲不掉。

我曾经也是这样,直到我花了两天时间写了一个自动化脚本,现在每天的数据报表,运行30秒自动生成,我到点下班,报表已经躺在共享文件夹里了。今天把这套方法完整拆给你,代码可直接运行,建议先收藏再看。

一、先想清楚:什么样的报表值得自动化?

不是所有报表都要自动化。判断标准很简单:数据源每天变、处理逻辑不变、更新频率高。满足这三条,就该交给代码。

我当时的场景是这样的:每天从业务系统导出3份CSV销售数据,需要合并成一张总表,清洗掉测试账号和空行,按门店汇总销售额,再算出环比增长率,最后输出一份带格式的Excel日报。

手动做一遍大约40分钟,天天做,做得人麻木。

二、环境准备:5分钟搞定

只需要装一个pandas,加上处理Excel必需的openpyxl:

pip install pandas openpyxl

就这两个库。pandas负责数据处理,openpyxl负责Excel的读写和格式。不需要更多花哨的东西。

三、核心代码:从3份CSV到一份成品日报

整个脚本分四步,我一步步拆给你看。

第一步,读取并合并数据。利用pandas的concat,把文件夹里所有CSV一次性读进来拼在一起,以后新增文件也不用改代码:

第二步,数据清洗。去掉测试账号、删掉关键字段缺失的行、统一日期格式。这一步是报表数据可信的关键,千万别省:

第三步,汇总统计。按门店分组求和,再算环比。pandas一个groupby就顶你手动做半天透视表:

第四步,输出带格式的Excel。不只是导出数据,还把表头加粗填蓝、百分比格式调好,导出来就是能直接发给老板的样子:

四、最后一步:让它每天自动跑

Windows用户用「任务计划程序」,新建一个每日9点的任务,执行python你的脚本.py;Mac用户用crontab。设好之后,你每天到公司时,报表已经生成完毕。这一步才是自动化的灵魂代码只解决「怎么算」,定时任务解决「不用你按」。

相关学习资料