ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

办公-读取exl批量制作word模板(存在一定问题)

2022-03-20 22:33:04  阅读:146  来源: 互联网

标签:word name exl mayor xuefen classs 模板 row


办公-读取exl批量制作word模板(存在一定问题)

参考代码 Python自动化办公之Word,全网最全看这一篇就够了
python套用word模板_如何使用MailMerge用python填写word模板?

代码

from openpyxl import Workbook, load_workbook
from mailmerge import MailMerge

template = '模板.docx'
document = MailMerge(template)

# 加载excel文件
wb = load_workbook("123.xlsx",data_only=True)
# 获取所在的工作表
sheet = wb.active


flag=0
countRow=0
lastRow=(0,0)
for row in sheet.iter_rows(min_row=2, max_row=38,min_col=1, max_col=8):
	save = 0
	for i in row:

		if i.value==None:
			flag=1
			continue
		if (flag==1 and save==0):
			name=lastRow[4].value
			num=lastRow[3].value
			classs=lastRow[0].value
			mayor=str(classs)[:-3]
			xuefen=row[7].value
			if int(xuefen)>=12:
				print(name,num,mayor,classs,xuefen)
				document.merge(name=name,
								num=str(num),
								mayor=mayor,
								classs=classs,
								xuefen=str(xuefen))
				document.write('新建文件夹\{:}的学业.docx'.format(name))
				save=1

		print(i.value,end=', ')
		flag = 0
	print()
	lastRow = row
	countRow+=1
print(countRow)

限制

1.document.merge(name=name,
num=str(num),
mayor=mayor,
classs=classs,
xuefen=str(xuefen))函数使用时虽然name,sum,mayor,classs,xuefen数据已更新,但产生新模板时依然只沿用老数据,使得新产生的模板虽然名字不同,里面的内容都是一样的(数据与第一次运行该函数的数据相同)

标签:word,name,exl,mayor,xuefen,classs,模板,row
来源: https://www.cnblogs.com/Frey-Li/p/16032484.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有