用 Python + Windows 计划任务,把每天 40 分钟的 Excel 汇总交给电脑

举报
yd_224001237 发表于 2026/10/29 00:21:13 2026/10/29
【摘要】 用 Python 的 pandas 把每天多张 Excel 报表自动汇总成一张表,再交给 Windows 计划任务在固定时间无人值守运行,并附上文件占用、表头校验和日志记录三个实用防护。

每天临近下班,我都要把散在一堆文件夹里的 Excel 报表手工打开、复制、粘贴、核对,最后拼成一张汇总表。动作不难,但重复、耗时,还容易在第九张表上点错行。后来我用 Python 加 Windows 计划任务把这件事整个交了出去,这里记录一下思路。

一、先想清楚要自动化什么

动手之前先把三件事定死:输入是什么(同一个目录下、表头结构一致的 xlsx 文件)、输出是什么(一张带日期后缀的汇总表)、什么时候跑(例如每天 18:00)。规则越明确,脚本越短。

二、用 pandas 做汇总

核心逻辑只有三步:遍历目录读出所有表、纵向合并、写出结果。用 pathlib 找文件,用 pandas.read_excel 逐个读取,再用 pandas.concat 合并成一张大表,最后 to_excel 落到输出目录。二十来行代码就能覆盖,不需要任何框架。

三、让脚本自己跑起来

Windows 上最省事的是任务计划程序:新建任务,触发器设为每天固定时间,操作里填 pythonw.exe 的路径和脚本参数,起始位置设成脚本所在目录。pythonw 不弹黑框,适合无人值守。也可以用 schtasks 命令把注册过程写成一行,方便迁移到别的机器。

四、把失败当常态

自动化最怕的不是写不出来,而是某天悄悄失败没人知道。我加了三处保护:文件被 Excel 占用时先重试、再跳过并记录;读表前校验列名,不符合预期就整批中止;每次运行把开始时间、处理文件数、异常堆栈写进日志。日志不用漂亮,能回答「昨晚到底跑没跑」就够了。

五、效果和边界

上线之后,这项每天约 40 分钟的工作变成了几秒钟,而且不会因为赶时间而漏行。但也要承认边界:如果汇总规则天天变、或者需要人来判断取舍,硬编码的脚本反而会变成负担。先自动化那些「步骤固定、只是量大」的部分,收益最直接。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。