
高效处理多个Excel文件:批量读取与分割数据
本文介绍一种Python方法,实现批量读取多个Excel文件,并提取特定范围的数据到独立的Excel文件中。
需求:
如何自动处理多个Excel文件(例如,1.xlsx、2.xlsx…10.xlsx),从每个文件中提取指定区域(比如前100行)的数据,并分别保存到新的Excel文件?
解决方案:
以下Python代码利用openpyxl库实现该功能:
<code class="python">import openpyxl
# 循环处理10个Excel文件
for i in range(1, 11):
try:
# 打开当前Excel文件
workbook = openpyxl.load_workbook(f"{i}.xlsx")
sheet = workbook.active # 获取活动工作表
# 提取指定范围的数据 (前100行)
data = list(sheet.values)[0:100] # 使用list()将sheet.values转换为列表
# 创建新的Excel文件存储提取的数据
new_workbook = openpyxl.Workbook()
new_sheet = new_workbook.active
# 将数据写入新Excel文件
for row in data:
new_sheet.append(row)
# 保存新Excel文件
new_workbook.save(f"output_{i}.xlsx")
print(f"已成功处理文件 {i}.xlsx")
except FileNotFoundError:
print(f"未找到文件 {i}.xlsx")
except Exception as e:
print(f"处理文件 {i}.xlsx 时出错: {e}")
</code>
这段代码更健壮,加入了错误处理机制,能够应对文件不存在或其他异常情况。 list(sheet.values) 的使用确保了数据被正确地转换为列表以便迭代。 最后,添加了打印语句,方便用户追踪处理进度和错误。










