Python 官方文档:入门教程 => 点击学习
本文小编为大家详细介绍“怎么使用python根据原始excel表格批量生成目标Excel表格”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用Python根据原始Excel表格批量生成目标Excel表格”文章能帮助大家解决疑惑,下面跟
本文小编为大家详细介绍“怎么使用python根据原始excel表格批量生成目标Excel表格”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用Python根据原始Excel表格批量生成目标Excel表格”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
问题来源于实际的需求,下图是原始数据,需要在1-3处填充另外一个表格中的数据:
如果是正常操作的话,肯定是点击进去Excel文件,然后每个单元格进行复制,然后粘贴到新文件,然后保存,之后重命名。
这样做肯定是可以,但是当有上百个文件夹需要复制呢?上千个文件呢?肯定就需要消耗大量的时间和精力了。估计一天都不一定完成的了。
这里使用Python进行批量实现!
这里给大家提供一个可行的代码,思路也很简单,openpyxl库进行实现,代码如下:
import openpyxlworkbook1 = openpyxl.load_workbook("模板.xlsx")worksheet1 = workbook1.worksheets[0]print(worksheet1['C4'].value)# 金额print(worksheet1['D4'].value)# 公司print(worksheet1['F4'].value)# 编号workbook2 = openpyxl.load_workbook("订单.xlsx")worksheet2 = workbook2[0]print(worksheet2['C3'].value)# 城市print(worksheet2['D3'].value)# 编号print(worksheet2['CU3'].value)# 金额print(worksheet2['DM3'].value)# 公司print(f"正在处理订单:{worksheet2['C3'].value}...")worksheet1['C4'].value = worksheet2['CU3'].valueworksheet1['D4'].value = f"{worksheet2['DM3'].value}分公司"worksheet1['F4'].value = worksheet2['D3'].valuenew_file_name = f"({worksheet2['C3'].value} {worksheet2['D3'].value})"workbook1.save(new_file_name + '.xlsx')print(f"订单:{worksheet2['C3'].value}处理完成")
代码运行之后,就可以实现该Excel文件中对应的数据替换了。不过这里只是单个文件的替换。
如果想要批量的进行替换的话,则需要加入for循环,如下所示:
for i in range(len(worksheet.row)):print(f"正在第{i}行,处理订单:{worksheet2[f'C{i}'].value}...")worksheet1['C4'].value = worksheet2[f'CU{i}'].valueworksheet1['D4'].value = f"{worksheet2[f'DM{i}'].value}分公司"worksheet1['F4'].value = worksheet2[f'D{i}'].valuenew_file_name = f"({worksheet2[f'C{i}'].value} {worksheet2[f'D{i}'].value})"workbook1.save(new_file_name + '.xlsx')time.sleep(3)print(f"订单:{worksheet2[f'C{i}'].value}处理完成")
读到这里,这篇“怎么使用Python根据原始Excel表格批量生成目标Excel表格”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网Python频道。
--结束END--
本文标题: 怎么使用Python根据原始Excel表格批量生成目标Excel表格
本文链接: https://lsjlt.com/news/356974.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0