自动化办公:教你如何快速合并Excel文件
大家好,今天更新一篇关与自动化办公的文章。
我们在日常办公中经常会处理各种表格,进行问卷调查等。这些表格可以是我们做好的模板,可以是实践调研,我们需要对填写的表格进行汇总总结,同时需要将反馈回来的附件给汇总结成一个文件。这个工作看似很简单,但是我们每个月每天都有各种类型的表格要进行收集统计,
如果每次都是这样一个个文件一个个文件进行操作的话,那样也太浪费时间了,而且效率更是非常低下,几百个表格还好说,当文件数量到达几千,几万的时候,我们就要去想想简单的方法了,今天在这里让大家,解放双手,解放大脑,不再重复造轮子,告别996.
所以,今天跟大家分享一个批量合并Excel表格(csv文件也是同理,主要以excel表格为例)的方法。这个方法分为以下几个部分。
一 、Excel文件(csv文件)的读取和写入
这里我们主要用到的是Openpyxl库,来对Excel进行读取和写入操作。
如果没安装的花可以直接
pip install Openpyxl
- 1
进行安装
如果pip无法安装,可以看我以前教的第三方库快速安装的方法(清华镜像,豆瓣镜像安装等),这里不多赘述。
1.Excel的读取
首先调用openpyxl.load_workbook()函数,打开“调研报告.xlsx”文件。
import openpyxl
wb = openpyxl.load_workbook('调研报告.xlsx')
- 1
- 2
然后获取“调研报告.xlsx”工作薄中名为“sheet1”的工作表。
sheet = wb['sheet1']
- 1
把“sheet1”工作表中A1单元格赋值给A1,再利用单元格value属性,就能获得A1单元格的值。
A1 = sheet['A1']
A1_value = A1_cell.value
- 1
- 2
以上就是Excel文件的读取啦!其他的单元格的数据获取同上,如想批量获取,只需加上一个for循环即可。
2.Excel的写入
利用openpyxl.Workbook()函数创建新的workbook(工作薄)对象,就是创建新的空的Excel文件。
wb_1 = openpyxl.Workbook()
- 1
创建完新的工作薄后,还得获取工作表。不然程序会无所适从,不知道要把内容写入哪张工作表里。
sheet_1 = wb_1.active
- 1
如果我们想往工作表里写入一行内容的话,就得用到append函数。然后如果想批量插入的话,我们加上一个for循环就可以了。
a = [A.value,B.value,C.value,D_cell.value,E.value]
sheet_1.append(a)
- 1
- 2
往单元格里写入内容只要定位到具体的单元格,如A1(根据Excel的坐标,A1代表第一列第一行相交的单元格),然后给这个单元格赋值即可。它可以方便我们输入文件的表头。
sheet_1[‘A1’] = ’ ’
sheet_1[‘B1’] = ’ ’
sheet_1[‘C1’] = ’ ’
sheet_1[‘D1’] = ’ ’
sheet_1[‘E1’] = ’ ’
#写入你的表头名称
以上就是Excel文件的写入啦!如想批量写入,只需加上一个for循环即可。
二、批量获取Excel文件
在上面我们已经学会如何读取和写入Excel文件了,但是在读取文件名的时候,我们还是需要手动输入的,如果文件很多的话,我们要一个一个的输入,这不仅麻烦,而且也不符合自动化办公的名头。所以,我们就需要想办法取得该目录下的所以Excel文件。
这里我们用的是os库。
如果没安装的花可以直接
pip install os
- 1
进行安装
如果pip无法安装,可以看我以前教的第三方库快速安装的方法(清华镜像,豆瓣镜像安装等),这里不多赘述。
取得该目录下所有的xlsx格式文件
path = ‘C:\自动化办公’
将该目录下所有文件存储到files列表中。
file_list = []
path = 'C:\自动化办公'
for i in os.listdir(path): if 'xlsx' in i.split('.'): files.append(i)
- 1
- 2
- 3
- 4
- 5
示例:
import os
#os & sys 模块使用\os_mod.py
print(os.getcwd())
print(os.listdir())
print(os.listdir('os & sys 模块使用'))
for i in os.listdir('os & sys 模块使用'): print(i) if 'py' in i.split('.'): print(os.listdir('os & sys 模块使用'))
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
三、总体思路
批量合并Excel文件的思路是:
1. 获取该目录下所有的Excel文件,并存入一个列表中。
2. 创建新的Excel文件(汇总文件)。
3. 依次读取Excel文件,并写入汇总文件中。
4. 保存汇总文件。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
自动化办公练习代码:
个人公众号 yk坤帝
后台回复 自动化办公excel合并 获取源代码
import os
#os & sys 模块使用\os_mod.py
print(os.getcwd())
print(os.listdir())
print(os.listdir('os & sys 模块使用'))
for i in os.listdir('os & sys 模块使用'): print(i) if 'py' in i.split('.'): print(os.listdir('os & sys 模块使用'))
# os.remove()
# os.removedirs()
# print(os.path.isfile('a'))
# print(os.path.isfile('os & sys 模块使用/os_mod.py'))
# print(os.path.exists('os & sys 模块使用/os_mod.py'))
# print(os.path.exists('os & sys 模块使用'))
# print(os.path.dirname('os & sys 模块使用/'))
# print(os.path.abspath('os_mod.py'))
# print('2步操作!!!!!!!')
# print(os.path.basename('os_mod.py'))
# print(os.system('ipconfig'))
# #print(os.remove('旧的文件名','新的文件名'))
# # os.mkdir()
# # os.makedirs()
# print(os.stat('os & sys 模块使用/os_mod.py'))
# print(os.path.getsize('os & sys 模块使用/os_mod.py'))
# import sys
# print(sys.path)
# print(sys.argv)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
个人公众号 yk坤帝
后台回复 自动化办公excel合并 获取源代码
文章来源: blog.csdn.net,作者:yk 坤帝,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq_45803923/article/details/118690800
- 点赞
- 收藏
- 关注作者
评论(0)