Python批量复制Excel表格数据:从a1到a100合并到b1到b100
Python批量复制Excel表格数据:从a1到a100合并到b1到b100
需要将一个文件夹中100个Excel表格的数据合并到另一个文件夹中100个对应的Excel表格中吗?这篇文章提供了一个高效的Python解决方案,即使你对编程不太熟悉也能轻松上手。
问题描述:
假设你有两个文件夹,一个文件夹包含名为 'a1.xlsx', 'a2.xlsx', ..., 'a100.xlsx' 的Excel表格,另一个文件夹包含名为 'b1.xlsx', 'b2.xlsx', ..., 'b100.xlsx' 的Excel表格。你需要将 'a' 文件夹中每个表格的 'Sheet1' 数据复制到 'b' 文件夹中对应表格的 'm' 工作表,同时保留 'b' 文件夹中表格的原有数据。
解决方案:
以下Python代码使用 openpyxl 库实现了这个功能:pythonimport osimport shutilimport openpyxl
定义源文件夹和目标文件夹路径source_folder = '源文件夹路径'target_folder = '目标文件夹路径'
遍历源文件夹中的Excel表格for i in range(1, 101): # 构建源文件路径和目标文件路径 source_file = os.path.join(source_folder, f'a{i}.xlsx') target_file = os.path.join(target_folder, f'b{i}.xlsx') # 打开源文件和目标文件 source_workbook = openpyxl.load_workbook(source_file) target_workbook = openpyxl.load_workbook(target_file) # 获取源文件的sheet1和目标文件的m工作簿 source_sheet = source_workbook['Sheet1'] target_sheet = target_workbook['m'] # 复制源文件的数据到目标文件 for row in source_sheet.iter_rows(min_row=1, max_row=492, max_col=10, values_only=True): target_sheet.append(row) # 保存目标文件 target_workbook.save(target_file) # 关闭源文件和目标文件 source_workbook.close() target_workbook.close() # 复制完成print('Excel表格数据复制完成!')
使用方法:
- 确保你的电脑上已经安装了 
openpyxl库。如果没有安装,可以使用pip install openpyxl命令安装。2. 将代码中的'源文件夹路径'和'目标文件夹路径'分别替换为实际的源文件夹路径和目标文件夹路径。3. 运行代码。 
代码说明:
- 代码首先使用 
for循环遍历从1到100的数字,分别代表 'a1.xlsx' 到 'a100.xlsx' 和 'b1.xlsx' 到 'b100.xlsx'。* 对于每个数字i,代码使用os.path.join()函数构建源文件路径和目标文件路径。* 然后,代码使用openpyxl.load_workbook()函数打开源文件和目标文件。* 接着,代码获取源文件的 'Sheet1' 和目标文件的 'm' 工作表。* 代码使用iter_rows()函数遍历源表格的每一行,并使用append()函数将每一行数据添加到目标表格的末尾。* 最后,代码保存目标文件并关闭所有打开的文件。 
总结:
这段代码提供了一个简单高效的解决方案,用于批量复制Excel表格数据。 通过修改代码中的路径和文件名,你可以轻松地将这段代码应用于其他类似的场景。
原文地址: https://www.cveoy.top/t/topic/Oef 著作权归作者所有。请勿转载和采集!