excel 复制数据 sql server 粘贴_几百个Excel表格的内容要复制粘贴,如何一键自动化搞定?| 州的先生...
点击关注州的先生
编程应用、实战教程,不容错过
在工作中经过会遇到大量格式一致,内容不同的Excel表格文件,需要将这里面的内容整理到一个Excel文件中的情形。一般情况下,都是将这些Excel表格文件一个一个地打开,将里面的内容复制,然后粘贴到一个新的Excel表格文件中。不仅费时费力还容易出错,Excel文件比较少还好,要是有几十个几百个,那会把自己逼疯了去。今天,州的先生(https://zmister.com)来介绍一下使用Python快速处理这种繁琐的Excel整理工作,代码少,速度快,效果好!
一、应用场景
很多贸易类型的公司都会不定期地对公司的产品进行内购处理,既能给实惠予员工,又能清理库存。在这里,我们假设行政小姐姐需要制作一个“员工内购信息登记表”的模板Excel,让所有员工填好之后,私信发给自己,自己再进行整理汇总所有的内购信息。模板如下图所示:
原本以为没有多少员工会买,但是却收到了将近一百份的Excel。这要是一个一个复制粘贴,那不得整得手抽筋。
嗯,是时候让Python上场了。
二、批处理Excel
在这里,我们需要使用到两个核心的模块:xlrd和xlsxwriter。xlrd用于读取Excel文件内容,xlsxwriter用于创建和写入Excel内容。引入相关的模块:
import xlsxwriterimport os.pathimport xlrd
我们首先实例化一个xlsxwriter的Workbook(),这将创建一个Excel文件:
workbook = xlsxwriter.Workbook('./员工内购信息登记表-汇总.xlsx')
然后,利用add_worksheet()方法添加一个工作簿:
worksheet = workbook.add_worksheet()
我们看到表格模板中的第一行是标题,它的格式是加粗居中,并且合并了几个单元格,我们通过代码来实现:
# 粗体居中格式boold_center = workbook.add_format({'bold':True,'align':'center'})# 写入标题worksheet.merge_range("A1:E1", "员工内购信息登记表",boold_center)
在这里,我们通过add_format()方法创建了一个格式,通过merge_range()方法合并了几个单元格。下面是各个数据项的名称,它们是:部门、姓名、物品编号、数量和收货地址,均需要设置加粗格式:
# 添加一个粗体格式bold = workbook.add_format({'bold': True})# 在Excel中写入项目名称worksheet.write('A2',"部门",bold)worksheet.write('B2',"姓名",bold)worksheet.write('C2',"物品编号",bold)worksheet.write('D2',"数量",bold)worksheet.write('E2',"收货地址",bold)
通过write()方法可以直接在指定单元格中写入内容,这样就完成了标题和数据项的写入,下面轮到实际的数据值了。我们通过os.listdir()方法遍历指定目录下的文件,然后通过xlrd模块的open_workbook()方法打开遍历到的Excel文件,随后读取相应单元格的内容,接着将内容写入到新创建的Excel文件的工作簿,最后关闭新建的Excel:
n = 3for i in os.listdir('./'): # print(n) if i.startswith('~') is False and i.endswith('xlsx'): # print(i) file = xlrd.open_workbook(i) info = file.sheet_by_index(0) department = info.cell(2,0).value # 部门 name = info.cell(2,1).value # 姓名 product_no = info.cell(2,2).value # 物品编号 num = info.cell(2,3).value # 数量 address = info.cell(2,4).value # 地址 worksheet.write("A{}".format(n),department) worksheet.write("B{}".format(n),name) worksheet.write("C{}".format(n),product_no) worksheet.write("D{}".format(n),num) worksheet.write("E{}".format(n),address) print("完成{}数据提取".format(i)) n += 1workbook.close()
这样,就完成了这个Excel表格内容批处理代码的编写。运行上述代码,几秒钟后,我们就可以得到一个名为“员工内购信息登记表-汇总.xlsx”的Excel文件:
里面已经把所有Excel文件里面的数据都整理汇总到了一起,如下图所示:
这样,我们就通过Python用几十行代码轻松地处理了这个繁琐的Excel整理工作。
学会了吗?欢迎留言讨论~
▼点击“
万水千山总是情,点个“在看”行不行▼
excel 复制数据 sql server 粘贴_几百个Excel表格的内容要复制粘贴,如何一键自动化搞定?| 州的先生...相关推荐
- excel 复制数据 sql server 粘贴_数据资料复制粘贴麻烦?教你硬盘对拷资料
什么是硬盘对拷?其实也就是将硬盘的引导文件.启动BOOT.分区表.各类文件.资料等数据拷贝至另一个硬盘中,虽然其过程与复制粘贴有点类似,但实际并非是简单的复制粘贴.那么如何实现硬盘对拷?下面小编分享一 ...
- excel 复制数据 sql server 粘贴_一个Excel妙招,一个SQL技巧,解决批量数据插入问题
#Excel技巧# #数据库# #MySQL# 业务背景 不知道您在工作中有没有遇到过这样几种情况: 业务定期给你一批数据结构相同的名单或者数据,要求你插入到库里并进行处理. 机器学习指标加工时,一个 ...
- excel 复制数据 sql server 粘贴_win32 实现 excel 快速复制粘贴
直接简明说:该方法可以直接将一张代码的区域内容直接 copy 到另一张表上,并且字体颜色.背景.格式都不变,另外还可以 copy 公式(相当于 excel 下拉公式) from win32com.cl ...
- ueditor如何设置上传图片的高度宽度_上百张图片上传并对齐,你加班2小时没搞定,同事简单三步就完成...
Excel除了汇总数据还可以上传保存相片,比如我们在人力信息表中将每个人的相片放到表格里面去,或者我们需要将宠物对应的相片放到表格里面去,这就涉及到图片的批量上传以及对齐的操作. 如图所示,我们需要将 ...
- 如何将数据从Excel文件导入SQL Server数据库
There are many ways to import data from an Excel file to a SQL Server database using: 有多种方法可以使用以下方法将 ...
- sql server 快照_在SQL Server合并复制中应用快照时出现外键问题
sql server 快照 This article will review specific SQL Server merge replication issues related to forei ...
- 使用SQL Server事务复制将SQL Server数据库迁移到Azure SQL数据库
In this guide, we'll discuss more about migrating a SQL Server database to Azure SQL Database using ...
- python slicer_报表筛选:Excel Slicer与SQL Server Reporting Services(SSRS)参数
python slicer This article explores the report filtering using Excel Slicer and SQL Server Reporting ...
- 服务器腾讯通文件数据源导入,连接到 Excel 数据源(SQL Server 导入和导出向导)...
连接到 Excel 数据源(SQL Server 导入和导出向导) 04/02/2018 本文内容 适用于: SQL Server(所有支持的版本) Azure 数据工厂中的 SSIS Integra ...
最新文章
- Powerdesigner逆向工程64位Oracle数据库
- qt5中字符串转字符串数组_Qt中的对象类型转换(Qstring 转换char*有三种方法)
- 网络推广公司介绍几个能提升网站收录的“隐藏版”小技巧!
- eclipse 安装svn插件
- spring注入出错
- Python日志详解【两篇就够了系列】--第一篇logging
- Hadoop生态系统介绍
- 图的广度优先遍历和深度优先遍历
- c语言ch能储存多少字符,二级c语言程序设计习题与解答ch5-7函数字符(11页)-原创力文档...
- 可以替代basemap的几个工具
- No package ‘gtksourceview-4‘ found
- 跳马问题C++递归调用
- [Unity][NGUI]悬浮点击空白区域隐藏UI
- 如何使用python寻找K线中的黄昏之星
- 多任务系统(操作系统)
- 电影院订票选座网站系统 毕业设计毕设源码毕业论文参考(2)前台功能
- 化妆品行业 垂直电商
- 公司想要做CMMI认证,须先了解这几点!
- 是我自己错了,错错错……
- java识别3D打印图_如何识别3D打印FDM机器结构i3、并联臂、UM、MB
热门文章
- fatal error C1189: #error : Building MFC application with /MD[d]
- 《深入理解Java虚拟机》笔记6——高效并发
- 基于epoll实现简单的web服务器
- TCP报文段首部格式详解
- Chrome控制台使用详解 1
- 使用 C++ 的 StringBuilder 提升 4350% 的性能
- Oracle编程入门经典 第4章 新9i示例模式
- 中国计算机学会CCF推荐国际学术会议和期刊目录-数据库/数据挖掘/内容检索
- 鸟哥的Linux私房菜(基础篇)-第一章、Linux是什么(一.2. Torvalds的Linux发展)
- 我的python之路(四):列表