将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])
相关推荐
统计学小王子11 小时前
数学建模国赛倒计时8天——《搭建建模Word框架(字体字号)》
数学建模·word
一晌小贪欢14 小时前
python-第15天:Python 列表推导式
开发语言·python·excel·数据可视化·python办公
tryxr19 小时前
Chat2Excel 项目通用服务开发
java·开发语言·excel·java项目开发
Jazz_z19 小时前
使用 Python 合并与取消合并 Excel 单元格
开发语言·python·excel
2601_962381862 天前
Python办公联动:Excel数据一键自动生成PPT图表
python·数据分析·自动化·excel·ppt
EXI-小洲3 天前
Java 操作 Word:字符串替换、图片插入、动态生成表格与API接口下载
java·开发语言·spring boot·word
三声三视3 天前
Word 转 Markdown 报“保真率 98%“,可那张表散了
word·word转markdown·格式转换·开发者工具·tri-docx2md·结构保真
tryCbest4 天前
Excel常用公式(WPS vs Office)
excel·wps
课件帮4 天前
从Word教案到带讲解微课:课件帮一键成片全流程实操
word
taller_20004 天前
【006】何时用 Python?何时用 Excel 公式?一文讲清
python·excel·公式·pie·py