将excel文件中的信息读取后批量生成word文件

在日常办公过程中,可能需要把excel文件中的信息批量生成成百上千份word文档,便于打印、发邮件或存档等,比如根据excel中的合格人员招聘信息生成word合同文件,或是根据excel中的参会人员名单生成word参会通知等。

首先需要制作word模板,并在需要信息替换的位置设置域,选择MergeField,并配置域名。如本例设置了deptname和position两个域,需要从excel表格中读取后替换部门和职务的内容。还有年、月、日三个固定值的在程序里面直接写好后,填充在word中的year,month,day域。代码如下:

python 复制代码
import pandas as pd
from mailmerge import MailMerge
folder_path='.\\word\\' #文件夹相对路径
df=pd.read_excel(folder_path+'名单.xlsx') #通过read_excel方法读取excel数据存储到dataframe中
arr=df.to_numpy()   #将dataframe转换成二维数组
template=folder_path+'通知.docx' #word模版文件的位置
doc=MailMerge(template)
def merge(name,pos):
    doc.merge(deptname=name,
          position=pos,
          year='2024',
          month='11',
          day='27')
    doc.write(folder_path+f'{name}通知.docx')
for i in range(len(arr)):   #逐行遍历数组
    merge(arr[i][0],arr[i][1])
相关推荐
缺点内向13 小时前
C#实战:使用Spire.Doc for .NET 获取并替换Word文档中的字体
c#·自动化·word·.net
城数派13 小时前
2005-2025年我国乡镇级的逐日最低气温数据(Shp/Excel格式)
数据分析·excel
SuperEugene13 小时前
Excel 上传解析 + 导出实战:Vue+xlsx 避坑指南|Vue生态精选
前端·javascript·vue.js·excel·xlsx·vxetable
领小13 小时前
VS2022 MFC对话框应用OLE读写操作excel
c++·excel·mfc
一点 内容13 小时前
企业级 Web Excel 多人实时在线协同:技术实现与核心突破
excel
TE-茶叶蛋14 小时前
从零实现H5 表格协同编辑:Yjs + WebSocket 实战
websocket·小程序·excel
mr_LuoWei200914 小时前
自定义的中文脚本解释器来实现对excel自动化处理(一)
python·自动化·excel
GJ_WL14 小时前
word自带公式编辑器自动将公式变成正体
编辑器·word
softbangong14 小时前
901-excel编辑工具
microsoft·自动化·excel·办公自动化·数据处理·excel操作·excel工具
身如柳絮随风扬14 小时前
Apache POI导出Word,PPT完整实现
spring boot·word·powerpoint·apache