模板批量导入doc

简介: python
from openpyxl import load_workbook
from docx import Document
from docxtpl import DocxTemplate
from docx.shared import Pt
# 打开 Excel 文件并加载工作表
workbook = load_workbook('mb.xlsx')
worksheet = workbook.active
# 遍历单元格并提取字段数据
data = []
for row in worksheet.iter_rows(min_row=2, values_only=True):
    fields = row[1:15]  # 提取从 B 列到 O 列的字段数据
    data.append(fields)
# 打开 Word 文件模板并替换变量值
document = DocxTemplate('投保单.docx')
variables = ['变量1', '变量2', '变量3', '变量4', '变量5', '变量6', '变量7', '变量8', '变量9', '变量10', '变量11', '变量12', '变量13', '变量14']
for i, fields in enumerate(data):
    context = {}
    for j, value in enumerate(fields):
        context[variables[j]] = str(value)
    document.render(context)
    document.save(f'{fields[10]}{fields[3]}.docx')

note:

1、workbook = load_workbook('mb.xlsx')  如果模板表格没有在工程目录下,修改为实际目录。

2、document = DocxTemplate('投保单.docx')如果 投保单.docx 没有在工程目录下,修改为实际目录。

3、 document.save(f'{fields[10]}{fields[3]}.docx') 生成位置默认在工程目录下,和代码在同一文件夹,如果需要修改,修改为实际目录。

目录
相关文章
vue3导出excel表格方式 ---XLSX文件(最快的导出方法 )
vue3导出excel表格方式 ---XLSX文件(最快的导出方法 )
226 0
|
Windows
阿里云的在线文档中,通常不提供直接导出为PDF或其他文档格式的功能
阿里云的在线文档中,通常不提供直接导出为PDF或其他文档格式的功能
618 1
|
JSON Java 应用服务中间件
利用esaypoi自定义Excel表格模板导入与导出表单数据
今天工作中又遇到了excel导出数据的功能,在这里我将自己自定义的Excel模板和相关的代码拿出来,解释一下如何进行操作,以便日后能够方便的进行功能开发,提高效率。
702 0
|
6月前
|
JavaScript
vue列表导出word文档
vue列表导出word文档
102 0
C#写入模板excel数据
C#写入模板excel数据
73 0
|
存储 JSON JavaScript
|
XML 数据格式
使用freemarker模板导出word文档
使用freemarker模板导出word文档
465 0
使用freemarker模板导出word文档
|
JavaScript 前端开发
html table 如何导出为excel表格案例分享
html table 如何导出为excel表格案例分享
html table 如何导出为excel表格案例分享
|
SQL 关系型数据库 MySQL
一键导出PostgreSQL数据库表设计为word文档
项目开始时,数据库表设计是从概要设计到详细设计,再到数据库中的表结构,有一套完整的文档
1212 0
一键导出PostgreSQL数据库表设计为word文档
|
JavaScript
VUE element-ui 之table表格导出Excel(自定义表头+自定义导出字段内容)
VUE element-ui 之table表格导出Excel(自定义表头+自定义导出字段内容)
1377 0