赞
踩
要实现这个功能,你可以使用`openpyxl`库来操作Excel文件。以下是一个简单的示例:
1. 首先,安装`openpyxl`库,如果你还没有安装的话。在命令行中输入以下命令进行安装:
- ```bash
- pip install openpyxl
- ```
2. 然后,使用以下代码将多个Excel工作表复制到一个新的汇总表中,并生成目录:
- import os
- from openpyxl import Workbook, load_workbook
-
- def copy_sheets_to_summary(input_files, output_file):
- # 创建一个新的工作簿
- summary_wb = Workbook()
- summary_ws = summary_wb.active
- summary_ws.title = "目录"
-
- # 遍历输入文件列表,打开每个文件并将其工作表复制到汇总表中
- for index, input_file in enumerate(input_files):
- input_wb = load_workbook(input_file)
- for sheet_name in input_wb.sheetnames:
- input_ws = input_wb[sheet_name]
- summary_ws.cell(row=index + 1, column=1, value=os.path.basename(input_file))
- summary_ws.cell(row=index + 1, column=2, value=sheet_name)
-
- # 复制工作表内容到新的工作簿
- new_ws = summary_wb.create_sheet(sheet_name)
- for row in input_ws.iter_rows():
- for cell in row:
- new_ws.cell(row=cell.row, column=cell.column, value=cell.value)
-
- # 保存汇总表
- summary_wb.save(output_file)
-
- # 示例:将两个Excel文件的工作表复制到一个汇总表中
- input_files = ["file1.xlsx", "file2.xlsx"]
- output_file = "summary.xlsx"
- copy_sheets_to_summary(input_files, output_file)
- ```

这段代码定义了一个名为`copy_sheets_to_summary`的函数,它接受一个输入文件列表和一个输出文件名。对于每个输入文件,它会打开文件并将所有工作表复制到一个新的汇总表中。同时,它还会生成一个目录,列出每个输入文件的名称和它们包含的工作表名称。最后,它会将汇总表保存到指定的输出文件中。
完整源码下载:https://download.csdn.net/download/aszhangwendi/88958792
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。