使用PYTHON写一个可以被调用的函数,将多个excel转为一个word,只需要传入excel路径和生成的文件名两个参数
时间: 2024-03-20 21:39:52 浏览: 65
好的,我可以为您编写这样的函数。您需要安装Python中的openpyxl和python-docx库,以便将Excel文件转换为Word文档。请确保这些库已经安装。
以下是代码:
```python
import os
from openpyxl import load_workbook
from docx import Document
from docx.shared import Inches
def excel_to_word(excel_path_list, word_filename):
"""
将多个Excel文件转为一个Word文档
:param excel_path_list: 包含多个Excel文件路径的列表
:param word_filename: 生成的Word文件名
"""
# 创建一个新的Word文档
document = Document()
# 遍历每个Excel文件
for excel_path in excel_path_list:
# 打开Excel文件
workbook = load_workbook(filename=excel_path)
# 遍历每个工作表
for sheet_name in workbook.sheetnames:
# 获取工作表
sheet = workbook[sheet_name]
# 创建一个新的段落,并将工作表名称添加到段落中
document.add_paragraph(sheet_name)
# 遍历每个行
for row in sheet.iter_rows():
# 创建一个新的表格,并将行数据添加到表格中
table = document.add_table(rows=1, cols=len(row))
table.autofit = True
cells = table.rows[0].cells
for idx, cell in enumerate(row):
cells[idx].text = str(cell.value)
# 添加一个空白行
document.add_paragraph()
# 保存Word文档
document.save(word_filename)
# 打开生成的Word文档
os.startfile(word_filename)
```
使用方法:
```python
excel_path_list = ["path/to/excel1.xlsx", "path/to/excel2.xlsx"]
word_filename = "path/to/word.docx"
excel_to_word(excel_path_list, word_filename)
```
其中,excel_path_list是包含多个Excel文件路径的列表,word_filename是要生成的Word文件名。
阅读全文