将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])
相关推荐
AI导出鸭PC端9 小时前
智谱清言怎样生成word文档——AI导出鸭助您一键转文档
人工智能·ai·word·豆包·deepseek·ai导出鸭
小桥流水---人工智能9 小时前
Word/WPS中英文连字符(断字)问题的三种解决方法
word·wps
ken223210 小时前
excel表格为什么越存文件越大? libreoffice 有效
excel
华大哥12 小时前
spring boot 和php 调用 LibreOffice 转换 Excel 到 PDF 完整实现
java·pdf·excel
Codiggerworld1 天前
Vim 实战:在 VS Code、JetBrains、终端里玩转 Vim
编辑器·vim·excel
开开心心_Every1 天前
多连接方式的屏幕共享工具推荐
运维·服务器·pdf·电脑·excel·tornado·dash
likerhood1 天前
Word 两列文档中插入横跨两列的表格
word
、我是男生。2 天前
给word添加mathtype插件的一些关键步骤!
word
Jun6262 天前
QT(4)-EXCEL操作
开发语言·qt·excel
草丛中的蝈蝈2 天前
word表格中当单元格内容过长时,分页后表格显示不连续。
word