Python保留格式复制多个Excel工作表到汇总表并生成目录(附源码下载)

要实现这个功能,你可以使用`openpyxl`库来操作Excel文件。以下是一个简单的示例:

  1. 首先,安装`openpyxl`库,如果你还没有安装的话。在命令行中输入以下命令进行安装:

    bash 复制代码
    pip install openpyxl
  2. 然后,使用以下代码将多个Excel工作表复制到一个新的汇总表中,并生成目录:

python 复制代码
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

相关推荐
不去幼儿园19 分钟前
【MARL】深入理解多智能体近端策略优化(MAPPO)算法与调参
人工智能·python·算法·机器学习·强化学习
幽兰的天空1 小时前
Python 中的模式匹配:深入了解 match 语句
开发语言·python
梓仁沐白3 小时前
ubuntu+windows双系统切换后蓝牙设备无法连接
windows·ubuntu
网易独家音乐人Mike Zhou5 小时前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
安静读书5 小时前
Python解析视频FPS(帧率)、分辨率信息
python·opencv·音视频
小二·6 小时前
java基础面试题笔记(基础篇)
java·笔记·python
九鼎科技-Leo7 小时前
什么是 WPF 中的依赖属性?有什么作用?
windows·c#·.net·wpf
小喵要摸鱼8 小时前
Python 神经网络项目常用语法
python
一念之坤9 小时前
零基础学Python之数据结构 -- 01篇
数据结构·python
Yang.999 小时前
基于Windows系统用C++做一个点名工具
c++·windows·sql·visual studio code·sqlite3