根据Excel信息批量生成Word文件的程序只生成最后一行内容
本帖最后由 水里有鱼 于 2021-12-12 21:41 编辑向论坛大佬们求助,在书上抄了一个批量生成Word文件的程序,只生成了Excel最后一行的一个Word,还把我原文档表格里的字体改变了。
from openpyxl import load_workbook
from docx import Document
def info_update(doc,old_info,new_info):
for para in doc.paragraphs:
for run in para.runs:
run.text=run.text.replace(old_info,new_info)
for table in doc.tables:
for row in table.rows:
for cell in row.cells:
cell.text = cell.text.replace(old_info,new_info)
wb = load_workbook('F:\桌面办公\办公文件\试验1.xlsx')
ws = wb.active
for row in range(2,ws.max_row+1):
doc = Document('F:\桌面办公\办公文件\执行代理方案模板.docx')
for col in range(1, ws.max_column+1):
old_info=str(ws.cell(row=1, column=col).value)
new_info=str(ws.cell(row=row, column=col).value)
info_update(doc,old_info,new_info)
com_name=str(ws.cell(row=row, column=6).value)
doc.save(f'F:\桌面办公\办公文件\代理方案文本\{com_name}执行代理方案.docx') 已解决
没有批量的原因是最后两行缩进有问题。
页:
[1]