要使用Python拆分Excel表格,你可以使用 `pandas` 和 `openpyxl` 库。以下是一个简单的示例,展示了如何根据指定的列值将Excel表格拆分成多个工作表:
import pandas as pdfrom openpyxl import Workbookfrom openpyxl.utils.dataframe import dataframe_to_rows读取需要拆分的Excel文件file_path = 'D:/data/全国订单.xlsx'df = pd.read_excel(file_path)创建一个新的Excel工作簿wb = Workbook()ws = wb.active根据“省份”列内容拆分成多个工作表for category in df['省份'].unique():df_category = df[df['省份'] == category]ws = wb.create_sheet(title=category)for r in dataframe_to_rows(df_category, index=False, header=True):ws.append(r)保存工作簿output_file = 'D:/data/aa.xlsx'wb.save(output_file)
请确保将 `file_path` 替换为你的Excel文件路径,并根据需要更改 `output_file` 变量。这个示例代码会读取Excel文件,并根据“省份”列的不同值创建多个工作表,每个工作表包含对应省份的数据。
如果你需要按照行数来拆分Excel表格,可以使用以下代码:

import pandas as pd读取Excel文件file_path = 'D:/Disc/123.xlsx'df = pd.read_excel(file_path)计算总行数total_rows = len(df)定义每行的文件数量rows_per_file = 1000计算需要拆分的文件数量num_files = (total_rows // rows_per_file) + (1 if total_rows % rows_per_file != 0 else 0)拆分数据并保存到新的Excel文件for i in range(num_files):start_row = i * rows_per_fileend_row = (i + 1) * rows_per_filesplit_df = df.iloc[start_row:end_row]output_file = f'output_{i + 1}.xlsx'split_df.to_excel(output_file, index=False)
这段代码会将Excel文件按照每1000行拆分成多个文件。请根据你的需求调整 `rows_per_file` 的值。
