鱼C论坛

 找回密码
 立即注册
查看: 1094|回复: 1

根据Excel信息批量生成Word文件的程序只生成最后一行内容

[复制链接]
发表于 2021-12-12 21:19:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 水里有鱼 于 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')  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-12-13 13:53:31 | 显示全部楼层
已解决
没有批量的原因是最后两行缩进有问题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-30 23:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表