news 2026/8/13 7:45:54

Python 办公自动化合集 ④:Excel 批量合并(多表合成一个总表)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python 办公自动化合集 ④:Excel 批量合并(多表合成一个总表)

嘿, 各位好呀~紧接着上一篇, , 也就是那第三篇提到学会了Excel分批全部行读取, 今儿个咱要学办公自动化堪称神奇的技能, 啥技能? Excel批量合并!

不论你拥有十个表格, 还是一百个表格, 亦或是一千个表格, 代码都能够一键自动将它们合并成为一个汇总表格, 自此告别手动开展复制粘贴操作, 效率提升至原来的一百倍!

一、这节课能够实现些什么呢? 第二、前期准备(必须要做)文件夹: C:\excel\test放进所有准备合并的Excel(格式必定得一样: 姓名、成绩等等)。

3、库已安装(上一篇已装,不用重复)

三、关键想法(新手轻松明白), 创建一个空白的总的表格, 先写入表格头部(姓名、成绩等等), 循环遍历读取每一个 Excel, 将每一个 Excel 的全部数据, 逐行依次添加到总的表格里, 保存最终的总的表格, 四、完整的代码(复制之后直接运行, 不会报错)

import os from openpyxl import Workbook, load_workbook # ====================== 【必须改这里】 ====================== path = "C://excel//test//" # 你的表格路径 # ============================================================ # 1. 创建一个新的总表 wb_total = Workbook() ws_total = wb_total.active ws_total.title = "合并总表" # 2. 写入表头(只写一次) ws_total["A1"] = "姓名" ws_total["B1"] = "成绩" current_row = 2 # 从第2行开始放数据 # 3. 遍历所有Excel文件 for file_name in os.listdir(path): if file_name.endswith(".xlsx"): print(f"正在合并:{file_name}") full_path = path + file_name wb = load_workbook(full_path) ws = wb.active # 4. 读取这个表格里的【所有行】 for row in range(2, ws.max_row + 1): name = ws[f"A{row}"].value score = ws[f"B{row}"].value # 5. 写入总表 ws_total[f"A{current_row}"] = name ws_total[f"B{current_row}"] = score current_row += 1 # 往下一行 # 6. 保存最终合并后的总表 wb_total.save("已合并总表.xlsx") print("========================================") print(" 全部合并完成!生成:已合并总表.xlsx")

五、运行效果

六、代码关键点明确指出(小白务必要看), 等于2意味着数据是从第2行开始进行书写的情况当中(这里需要清楚第1行是作为表头的), 对于每一行而言是在范围从2开始直到ws的值加上1这个区间来进行读取的, 去读取每个表格里的所有数据行, 并且在每写一条数据之后, 会自动向下移动进一行, 还有七、常见问题。

1、合并后数据错位

克服: 全部 Excel 的栏都得相同(A 栏为姓名, B 栏是成绩)。

2、表头重复出现

解决:表头只在总表里写一次,不要循环

3、只合并了部分文件

解决:路径正确,文件必须是 .xlsx

本篇所作的合并总结, 是要读取所有的 Excel 文件, 这其中还包括读取所有的行, 之后要写入总表, 几百个表格能够一键合并, 不会出现复制情况, 也不会出现粘贴情况, 并保证不出错, 这属于办公自动化里最常用的核心技能!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/13 7:45:53

基于PaddleNLP的体育赛事热点分析系统:从文本处理到情感分析实战

在实际体育赛事报道和技术分析领域,我们经常需要处理来自社交媒体、新闻标题和网络热词的零散信息,并将其整合、分析,最终形成结构化的数据或报告。本文将以一个虚构的技术项目为例,演示如何构建一个“体育赛事热点分析与情感倾向…

作者头像 李华
网站建设 2026/8/13 7:42:23

AI记忆系统构建指南:从短期记忆到长期记忆与智能体工作记忆

1. 从“健忘”到“有脑”:AI记忆能力的演进与核心价值最近和几个做AI应用的朋友聊天,发现一个挺有意思的现象:大家一窝蜂地都在搞“智能体”(AI Agent),但聊到具体实现时,很多人的产品还停留在“…

作者头像 李华
网站建设 2026/8/13 7:41:34

常用投票平台有哪些?3款主流工具盘点,附快速制作教程

一、选工具之前,先厘清三个问题 打开任何投票工具之前,建议先想清楚以下三点,它们直接影响后续选型。 第一,你的投票属于什么场景? 是班级内部十个人的团建表决,还是面向全校的摄影大赛?是微信群…

作者头像 李华
网站建设 2026/8/13 7:40:06

3DF Zephyr 9.0三维重建:从照片到高精度模型的完整指南

1. 先搞清楚 3DF Zephyr 9.0 到底能帮你做什么如果你手头有一堆照片,想快速把它们变成一个带纹理的三维模型,或者想从一段视频里提取出物体的三维结构,那 3DF Zephyr 9.0 就是你该关注的东西。它是一款专业的三维重建软件,核心能力…

作者头像 李华
网站建设 2026/8/13 7:38:37

网络协议栈全解析:从TCP/IP到QUIC的实践指南

1. 网络协议栈全景解析:从底层到高层的技术实现在计算机网络通信中,协议栈就像一座精心设计的建筑,每一层都有其特定的功能和职责。我从事网络开发多年,经常遇到开发者只关注应用层协议而忽视底层实现的情况。实际上,要…

作者头像 李华
网站建设 2026/8/13 7:37:59

Flutter Semantics组件详解:为UI注入可访问性的核心机制与实战

1. 从“看不见”到“看得见”:为什么你的Flutter应用需要Semantics如果你是一位Flutter开发者,你可能已经习惯了用Container、Row、Column和Text这些基础组件,像搭积木一样构建出精美的用户界面。你关心布局、动画、性能,甚至状态…

作者头像 李华