生成表格与合并表格
以下是一个Python脚本的示例,它将生成5个不同的Excel文件,每个文件包含不同的数据:
import pandas as pd
import numpy as np
# 设置文件名前缀和数量
file_prefix = 'excel_file'
number_of_files = 5
# 循环生成5个文件
for i in range(1, number_of_files + 1):
# 创建一些不同的数据
data = np.random.randint(1, 10, size=(10, 3)) # 10行3列的随机整数
# 创建一个Pandas DataFrame
df = pd.DataFrame(data, columns=['Column1', 'Column2', 'Column3'])
# 构建文件名
filename = f'{file_prefix}_{i}.xlsx'
# 写入Excel文件
df.to_excel(filename, index=False)
print(f'文件 {filename} 已生成。')
print('所有文件已生成。')
合并表格内容
import os
import openpyxl
def merge_excel_files_to_one_sheet(folder_path, output_file):
# 创建一个新的工作簿和工作表
new_workbook = openpyxl.Workbook()
new_sheet = new_workbook.active
new_sheet.title = 'merged_sheet'
# 遍历文件夹中的所有文件
for filename in os.listdir(folder_path):
if filename.endswith('.xlsx'):
# 构建完整的文件路径
file_path = os.path.join(folder_path, filename)
# 加载工作簿
workbook = openpyxl.load_workbook(file_path)
# 假设我们只合并每个工作簿的第一个工作表
sheet = workbook[workbook.sheetnames[0]]
# 复制工作表内容到新工作表
for row in sheet.iter_rows(values_only=True):
new_sheet.append(row)
# 保存合并后的工作簿
new_workbook.save(output_file)
print(f'合并后的文件已保存为:{output_file}')
# 设置文件夹的相对路径
folder_path = os.getcwd() # 根据你的文件结构调整这个路径
output_file = 'merged_excel.xlsx' # 输出文件名
merge_excel_files_to_one_sheet(folder_path, output_file)