You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas合并Excel指定工作表并保留其余原有工作表?

实现Excel工作表合并并保留原有工作表的方法

你的问题出在仅将合并后的工作表写入文件,覆盖了原文件中所有其他内容。要保留P3、P4并覆盖原文件,需要先读取原文件的所有工作表,处理后再将所有需要保留的工作表重新写入。

完整代码示例

import pandas as pd

# 1. 读取原文件的所有工作表,返回一个以工作表名为键的字典
all_worksheets = pd.read_excel('output.xlsx', sheet_name=None)

# 2. 合并P1和P2工作表,忽略原索引
merged_df = pd.concat([all_worksheets['P1'], all_worksheets['P2']], ignore_index=True)

# 3. 移除原有的P1、P2工作表,添加合并后的新工作表
del all_worksheets['P1']
del all_worksheets['P2']
all_worksheets['P1&P2'] = merged_df

# 4. 将所有工作表写入原文件,覆盖原有内容但保留需要的工作表
with pd.ExcelWriter('output.xlsx', engine='xlsxwriter') as writer:
    for sheet_name, df in all_worksheets.items():
        df.to_excel(writer, sheet_name=sheet_name, index=False)

关键说明

  • 使用sheet_name=None读取所有工作表,确保不会遗漏P3、P4等其他表
  • 处理完合并后,更新工作表字典,移除旧的P1、P2并加入新表
  • 遍历字典将所有工作表写入文件,这样原文件会被覆盖,但所有需要保留的工作表都会被写入

注意事项

如果原Excel文件包含单元格样式、公式或宏,pandas的读写操作会丢失这些内容。若需要保留格式,可使用openpyxl库直接操作Excel文件的工作表,但实现逻辑会更复杂。

内容的提问来源于stack exchange,提问作者The Great

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 23:05:12