使用 Python 3.8 和 Openpyxl 库拆分 Excel 表格

本文将展示如何使用 Python 3.8 和 Openpyxl 库,从一个 Excel 文件中提取多个工作表,并将每个工作表保存为单独的 Excel 文件。

代码示例

import openpyxl

# 打开 Excel 文件
wb = openpyxl.load_workbook('example.xlsx')

# 获取所有工作表
sheets = wb.sheetnames

# 遍历所有工作表,除了第一个工作表
for i in range(1, len(sheets)):
    # 创建新的 Excel 文件
    new_wb = openpyxl.Workbook()
    # 获取当前工作表
    sheet = wb[sheets[i]]
    # 复制当前工作表到新的 Excel 文件中
    new_sheet = new_wb.active
    for row in sheet.iter_rows():
        for cell in row:
            new_sheet[cell.coordinate].value = cell.value
    # 保存新的 Excel 文件
    new_wb.save(f'{sheets[i]}.xlsx')

代码解释

  1. 导入 Openpyxl 库: import openpyxl
  2. 打开 Excel 文件: wb = openpyxl.load_workbook('example.xlsx')
  3. 获取所有工作表: sheets = wb.sheetnames
  4. 遍历所有工作表,除了第一个工作表: for i in range(1, len(sheets))
  5. 创建新的 Excel 文件: new_wb = openpyxl.Workbook()
  6. 获取当前工作表: sheet = wb[sheets[i]]
  7. 复制当前工作表到新的 Excel 文件中:
    • new_sheet = new_wb.active 获取新的工作簿的活动工作表
    • 使用 iter_rows() 遍历源工作表中的所有行
    • 使用 cell.coordinate 获取单元格的坐标
    • 将单元格的值复制到新工作表中
  8. 保存新的 Excel 文件: new_wb.save(f'{sheets[i]}.xlsx')

通过以上代码,您可以轻松地将一个 Excel 文件中的多个工作表拆分成独立的 Excel 文件。


原文地址: https://www.cveoy.top/t/topic/fXcH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录