如果xlsx的sheet2中D2不为空则将r'D:\好记薪\工商资料生成\A公司登记申请书.docx'加之模板末尾并保留格式, 如果xlsx的sheet2中E2不为空则将r'D:\好记薪\工商资料生成\B股东会决议.docx'加之模板末尾并保留格式, 如果xlsx的sheet2中F2不为空则将r'D:\好记薪\工商资料生成\C章程.docx'加之模板末尾并保留格式, 如果xlsx的sheet2中G2不为空则将r'D:\好记薪\工商资料生成\D股权转让协议.docx'加之模板末尾并保留格式, 如果xlsx的sheet2中H2不为空则将r'D:\好记薪\工商资料生成\E有关债务清偿及担保情况说明.docx'加之模板末尾并保留格式.
时间: 2023-07-21 21:42:06 浏览: 488
14V-2A电源板-XL6009EI设计硬件原理图+PCB+生产BOM文件.zip
5星 · 资源好评率100%
你可以使用 openpyxl 库来读取 Excel 文件,然后根据单元格的值来添加不同的文档到模板末尾。以下是示例代码:
```python
from openpyxl import load_workbook
from docxcompose.composer import Composer
from docx import Document
# 加载 Excel 文件
wb = load_workbook(r'D:\好记薪\工商资料生成\表格.xlsx')
sheet = wb['Sheet2']
# 获取需要加入模板的文档路径
docx_files = []
if sheet['D2'].value:
docx_files.append(r'D:\好记薪\工商资料生成\A公司登记申请书.docx')
if sheet['E2'].value:
docx_files.append(r'D:\好记薪\工商资料生成\B股东会决议.docx')
if sheet['F2'].value:
docx_files.append(r'D:\好记薪\工商资料生成\C章程.docx')
if sheet['G2'].value:
docx_files.append(r'D:\好记薪\工商资料生成\D股权转让协议.docx')
if sheet['H2'].value:
docx_files.append(r'D:\好记薪\工商资料生成\E有关债务清偿及担保情况说明.docx')
# 创建模板 Docx
template_docx = Document(r'D:\好记薪\工商资料生成\template.docx')
# 将需要加入模板的文档逐个加到模板末尾
if docx_files:
composer = Composer(template_docx)
for docx_file in docx_files:
composer.append(Document(docx_file))
composer.save(r'D:\好记薪\工商资料生成\merged.docx')
```
这里我们使用 openpyxl 库读取 Excel 文件,并在 sheet2 中查找单元格 D2、E2、F2、G2、H2 的值。如果这些单元格的值不为空,则将相应的文档路径添加到 docx_files 列表中。
然后,我们创建一个模板 Docx,并使用 docxcompose 库的 Composer 类将需要加入模板的文档逐个加入模板末尾。最后,我们将合并后的文档保存到指定的路径。
注意,这里我们使用了 try-except 块来捕获可能出现的异常。如果文件路径不正确或文件格式不正确,可能会抛出异常,我们需要捕获并输出错误信息。
阅读全文