如果表格的sheet2中C2不为空,则调用并合并A、B文档。 如果表格的sheet2中C3不为空,则调用并合并A、B、C文档。 如果表格的sheet2中C2、C3不为空,如何避免A、B文档被重复合并
时间: 2024-03-22 10:38:56 浏览: 109
好的,根据您的需求,以下是一个修改后的Python实现,可以实现您的要求:
```python
import openpyxl
import docx
# 打开Excel表格
wb = openpyxl.load_workbook('your_file.xlsx')
# 选择Sheet2
sheet = wb['Sheet2']
# 获取C2单元格的值
c2_value = sheet['C2'].value
# 获取C3单元格的值
c3_value = sheet['C3'].value
# 判断C2单元格是否为空
if c2_value is not None:
# 打开公司登记申请书word文档
doc1 = docx.Document('document_A.docx')
# 打开股东会决议word文档
doc2 = docx.Document('document_B.docx')
# 如果C3单元格不为空
if c3_value is not None:
# 打开第三个文档
doc3 = docx.Document('document_C.docx')
# 将doc3中的内容添加到doc1的末尾
for p in doc3.paragraphs:
doc1.add_paragraph(p.text)
# 将doc2中的内容添加到doc1的末尾
for p in doc2.paragraphs:
doc1.add_paragraph(p.text)
# 保存合并后的文档
doc1.save('merged_document.docx')
# 如果C2单元格为空,但C3单元格不为空
elif c3_value is not None:
# 打开公司登记申请书word文档
doc1 = docx.Document('document_A.docx')
# 打开股东会决议word文档
doc2 = docx.Document('document_B.docx')
# 打开第三个文档
doc3 = docx.Document('document_C.docx')
# 将doc3中的内容添加到doc2的末尾
for p in doc3.paragraphs:
doc2.add_paragraph(p.text)
# 将doc2中的内容添加到doc1的末尾
for p in doc2.paragraphs:
doc1.add_paragraph(p.text)
# 保存合并后的文档
doc1.save('merged_document.docx')
```
对于避免重复合并的问题,您可以在判断C2和C3单元格是否为空时,使用一个if语句来避免重复打开和合并文档。具体实现可参考上述代码。
希望能够帮到您。如果您有其他问题,欢迎随时提出。
阅读全文