使用PYTHON写一个可以被调用的函数,将多个.xls格式的excel转为一个word,传参只有excel所在路径和生成的word名字
时间: 2024-03-20 19:42:28 浏览: 52
好的,我可以为您提供一个Python函数,用于将多个.xls格式的Excel文件转换为一个Word文件。以下是函数代码:
```python
import os
import win32com.client as win32
def excel_to_word(excel_path, word_name):
# 获取Excel文件列表
excel_files = [f for f in os.listdir(excel_path) if f.endswith('.xls')]
# 创建Word文档
word = win32.gencache.EnsureDispatch('Word.Application')
document = word.Documents.Add()
# 将Excel文件逐一插入Word文档
for excel_file in excel_files:
excel_file_path = os.path.join(excel_path, excel_file)
# 打开Excel文件并读取内容
excel = win32.gencache.EnsureDispatch('Excel.Application')
workbook = excel.Workbooks.Open(excel_file_path)
worksheet = workbook.Worksheets(1)
content = worksheet.UsedRange.Value()
# 将内容插入Word文档
document.Content.InsertAfter('\n'.join(['\t'.join([str(cell) for cell in row]) for row in content]))
document.Content.InsertAfter('\n\n')
# 关闭Excel文件
workbook.Close(False)
excel.Quit()
# 保存Word文档并关闭
document.SaveAs(os.path.join(excel_path, f'{word_name}.docx'))
document.Close()
# 退出Word
word.Quit()
```
您可以将以上代码保存为一个.py文件,并将其作为模块导入到您的程序中。调用该函数时,只需要传入Excel文件所在路径和要生成的Word文件名即可。例如:
```python
excel_to_word('C:/ExcelFiles', 'Result')
```
上述代码将会将'C:/ExcelFiles'文件夹中的所有.xls文件转换为一个Word文档,并将其命名为'Result.docx'。
阅读全文