当前位置:首页 > 实用技巧 >

excel数据批量导入word并单独保存(如何批量把excel数据导入word)

来源:原点资讯(www.yd166.com)时间:2024-01-15 21:31:37作者:YD166手机阅读>>

在日常工作中,为了统计分析数据,跟进项目进度,都会建立各种表格台帐,常常需要从表格提取关键数据,撰写WORD文件,进行管理预警通知。

如果数量较少,手动提取处理,应该问题不大,但如果多达几十份,甚至上百份,工作量将会很大,且均是重复性的工作,这就是今天的问题:如何实现从表格读取多条数据,自动批量导入WORD表格中,生成通知文件?大家可能使用过WORD的邮件合并功能,可以方便实现从EXCEL表中读取数据,批量打印WORD文档,但它与数据源一一对应,如果满足条件的是多条数据时,就很不方便了。下面介绍利用python,实现从EXCEL表中读取数据,批量导入WORD模板表格中,自动生成文件并保存。

1、导入库

import pandas as pd

from docx import Document

from docx.shared import Pt

from docx.enum.table import WD_ALIGN_VERTICAL

from docx.enum.text import WD_PARAGRAPH_ALIGNMENT

如果运行时,提示没有对应库,使用 pip 在命令行中安装这些库。

2、读取数据

df = pd.read_excel('example .xlsx',sheet_name=1)

文件位置根据实际替换,数据1默认第一个表。

3、设置字体样式

font_size = 12 # 字体大小

font_name = '仿宋' # 字体名称

可根据需要自行更改

4、生成单位名称列表

#抽取单位名称存为列表,用于for循环

xmlist=df['单位名称'].values.tolist()

xmlist=list(set(xmlist)) #名称去重

5、载入Word 模板文件

doc = Document('通知.docx')

target_table = doc.tables[0] # 模板中只有一个表格

target_row = 1 # 要插入数据的目标行

6、替换模板中的单位名称

for run in doc.paragraphs[1].runs:

run.text = run.text.replace('xmname',xmname)

将从列表中读取的单位名称,替换模板指定位置文字。

7、选择符合特定条件的数据

a.条件根据需要进行设定,注意同时满足的条件用&连接

condition = (df['列1'] == xmname) & (df['列2'] > 0) & (df['列3'] < 1)

filtered_data = df.loc[condition]

只保留需要的数据列

filtered_data = filtered_data[["列1","列2","列3"]]

b.设置数据是否为空的判断,因为部分单位不满足条件,没有必要生成空的WORD文档,即当为空时,跳出当前循环。

if filtered_data.empty:

continue

8、将数据插入模板表格的指定位置

for index, row in filtered_data.iterrows():

new_row = target_table.add_row().cells

for col_index, column in enumerate(filtered_data.columns):

cell = new_row[col_index]

cell.text = str(row[column])

9、设置字体样式

导入上面的字体,垂直位置居中,因第三列是数字,靠右好看些,所以加了if判断,即前两列靠左,第三列靠右。

cell.paragraphs[0].runs[0].font.size = Pt(font_size)

cell.paragraphs[0].runs[0].font.name = font_name

cell.vertical_alignment = WD_ALIGN_VERTICAL.CENTER

if col_index < 2: # 前两列水平靠左

cell.paragraphs[0].alignment =WD_PARAGRAPH_ALIGNMENT.LEFT

else: # 第三列水平靠右

cell.paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.RIGHT

10、增加新行,方便插入下一条数据

target_row = 1

11、保存生成的文件

doc.save("D:\\通知\\" xmname ".docx")

文件路径注意用双斜杠"\\",文件名称用对应数据。

好了,先向领导报怨工作量太大,然后泡杯茶,坐等下班[捂脸][捂脸]

excel数据批量导入word并单独保存,如何批量把excel数据导入word(1)

,

栏目热文

excel不同数据批量一对一导入word(excel数据批量导入word表格)

excel不同数据批量一对一导入word(excel数据批量导入word表格)

在日常办公中,当我们在word中批量制作同格式的工牌或者姓名信息卡时,需要把Excel中统计的信息数据一个个复制粘贴到w...

2024-01-15 21:28:05查看全文 >>

新赛季兰陵王辅助思路教学(兰陵王辅助怎么玩才是正确的)

新赛季兰陵王辅助思路教学(兰陵王辅助怎么玩才是正确的)

在王者峡谷中,辅助位的视野站位,可以说是打野与发育路打出节奏最好的催化剂,一位优秀的辅助,完全可以让其他位置,打出更好的...

2024-01-15 21:19:51查看全文 >>

兰陵王教学辅助怎么打(兰陵王打辅助玩法技巧)

兰陵王教学辅助怎么打(兰陵王打辅助玩法技巧)

之前介绍了一篇辅助兰陵王的好处的文章,就有小伙伴想让我聊聊辅助兰陵王的玩法要点,本篇咱们就来聊聊这个。一、召唤师技能携带...

2024-01-15 20:54:34查看全文 >>

新版辅助兰陵王打法(兰陵王辅助思路教学和意识)

新版辅助兰陵王打法(兰陵王辅助思路教学和意识)

第一次在nga怼攻略,难免有疏漏之处,还请回帖指出。前言:题主在S10赛季与S12赛季均在纯单排丶无刷分的情况下上了国服...

2024-01-15 21:02:00查看全文 >>

辅助兰陵王教学从零开始(兰陵王辅助思路教学和意识)

辅助兰陵王教学从零开始(兰陵王辅助思路教学和意识)

兰陵王是王者荣耀中一位操作简单、易上手的英雄,因此很多新手玩家喜欢选择他作为打野入门英雄。但是,兰陵王并不仅仅适用于新手...

2024-01-15 21:21:01查看全文 >>

凯美瑞烧机油能彻底解决吗(凯美瑞车烧机油最好的解决方法)

凯美瑞烧机油能彻底解决吗(凯美瑞车烧机油最好的解决方法)

作为十年的“老凯”车主,这辆爱车和我风雨同行十余载,我们不仅一起感受了风的吹拂,雨的洗礼,同时见证了我的成长,更重要的是...

2024-01-15 21:33:01查看全文 >>

凯美瑞烧机油越来越严重咋办呢(凯美瑞烧机油解决方法)

凯美瑞烧机油越来越严重咋办呢(凯美瑞烧机油解决方法)

六代凯美瑞是广丰2006年引进的第一款国产车型,豪华舒适的驾乘体验令它成为市场上最受欢迎的B级车之一。六代凯美瑞质量还是...

2024-01-15 21:28:42查看全文 >>

凯美瑞烧机油解决办法(凯美瑞通病烧机油的解决方案)

凯美瑞烧机油解决办法(凯美瑞通病烧机油的解决方案)

发动机机油消耗量过大原因有很多,治理前一定要做一个综合检查制定最合理的维修方案。如果你的车辆也存在机油消耗量过大,那么龙...

2024-01-15 21:13:06查看全文 >>

凯美瑞哪一款会烧机油(凯美瑞烧机油的原因是什么)

凯美瑞哪一款会烧机油(凯美瑞烧机油的原因是什么)

汽车烧机油可以说是发动机最大的问题了!一般汽车烧机油不外乎是这三个问题:1,涡轮增压器问题!这个故障是涡轮增压器油封老化...

2024-01-15 21:19:41查看全文 >>

凯美瑞哪个版本烧机油(凯美瑞解决烧机油了吗)

凯美瑞哪个版本烧机油(凯美瑞解决烧机油了吗)

这款凯美瑞可以说是最经典,最大气的一款,同时也是最受喜爱的一款!质量、舒适度也挺过关!这是底盘的一个照片发动机是2.4L...

2024-01-15 21:40:47查看全文 >>

文档排行