Python脚本操作Excel实现批量替换功能
作者:GalicFeather 发布时间:2023-06-15 16:37:57
大家好,给大家分享下如何使用Python脚本操作Excel实现批量替换。
使用的工具
Openpyxl,一个处理excel的python库,处理excel,其实针对的就是WorkBook,Sheet,Cell这三个最根本的元素~
明确需求原始excel如下
我们的目标是把下面excel工作表的sheet1表页A列的内容“替换我吧”批量替换为B列的“我用来替换的x号选手”
实现替换后的效果图,C列为B列替换A列的指定内容后的结果
实现以上功能的同时,我也实现excel的复制操作,比较简单~
开始吧!
1. 加载已有excel
我们使用的库是openpyxl,首先调用load_workbook('Path')
加载预先准备的excel,新建sheet页让我们的小成果更方便展示~
import openpyxl as xl
wb = xl.load_workbook('C:\\Users\huan.li\Desktop\MultiSubstitute.xlsx') # 加载excel文件
wb.create_sheet('新建sheet页', index = 2) # 新建sheet
2. sheet页操作
为了方便,我们把所有sheet页赋值到一个列表listSheet[]
中;
复制sheet页,相当于复制整个excel的内容,然后用循环实现Cell的设置:
listSheet = wb.sheetnames # 加载所有的sheet页
sheet = wb[listSheet[0]] # 选择一个sheet页
sheet2 = wb[listSheet[2]]
# 复制sheet
for i in range(1, sheet.max_row+1):
sheet2['A{0}'.format(i)].value = sheet['A{0}'.format(i)].value
sheet2['B{0}'.format(i)].value = sheet['B{0}'.format(i)].value
3. 加入excel函数实现批量替换操作
excel中有一个SUBSTITUTE函数,可以实现列与列之间的替换
利用循环实现批量替换
for i in range(1, sheet2.max_row+1):
sheet2['C{0}'.format(i)] = '=SUBSTITUTE(A{0},"替换我吧",B{1})'.format(i, i)
3. 保存处理好的excel
没能实现保存在load_workbook('Path')
函数加载进来的原本的excel中,这边只保存到了一个新的excel,但是这步,恰恰实现了复制excel的操作
wb.save('C:\\Users\huan.li\Desktop\MultiSubstitute_new.xlsx')
最终效果
复制的新的excel~
实现的替换~
总结
以上所述是小编给大家介绍的Python脚本操作Excel实现批量替换功能网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
来源:https://blog.csdn.net/weixin_36459823/article/details/103143980


猜你喜欢
- python使用qq邮箱(个人邮箱)发送邮件需开启qq邮箱的SMTP服务在设置中开启pop3/SMTP服务,返回的密码就是之后代码中登录使用
- 我们可用一个函数来实现小数转分数,不过只能转换能够整除的分数:Public Function XtoF(str 
- 简介这是一篇介绍网页设计原则的文章。在互联网迅速发展的今天,各种web 2.0网站竞争激烈,你死我亡。Jini, D
- 首先,我们先来看看,如果是人正常的行为,是如何获取网页内容的。(1)打开浏览器,输入URL,打开源网页(2)选取我们想要的内容,包括标题,作
- /** * 递归法实现的快速排序 * @param $seq * @return array */f
- 最近用到了docx生成word文档,docx本身用起来很方便,自带的各种样式都很好看,美中不足的就是对中文的支持不够好。在未设置中文字体的时
- 1. 在游戏循环中监听事件事件event:就是游戏启动后,用户针对游戏所做的操作例如:点击关闭按钮,点击鼠标,按下键盘监听:在游戏循环中,判
- python3.x已经不支持mysqldb了,支持的是pymysql使用pandas读取MySQL数据时,使用sqlalchemy,出现No
- 简介在日常开发中,我们的大部分时间都会花在阅读traceback模块信息以及调试代码上。本文我们将改进traceback模块,让其中的提示信
- redis-pyredis-py是Python操作Redis的第三方库,它提供了与Redis服务器交互的API。GitHub地址:https
- 用Python编写关于计算图形面积的代码实现,供大家参考,具体内容如下#寒假打卡28天第7天import mathclass Round()
- 本文实例为大家分享了celery实现订单超时取消的具体代码,供大家参考,具体内容如下Celery官方文档中关于定时任务使用的说明项目目录结构
- 本文提供许多的滤波方法,这些方法放在filters.rank子模块内。这些方法需要用户自己设定滤波器的形状和大小,因此需要导入morphol
- 本文实例讲述了Python捕捉和模拟鼠标事件的方法。分享给大家供大家参考。具体分析如下:这个假期玩了不少galgame,不过有些很老的游戏没
- 一、数据库操作1、创建model表基本结构from django.db import modelsclass userinfo(models
- 1、$nextTickvm.$nextTick( [callback] )this.$nextTick()将回调延迟到下次 DOM 更新循环
- 一、中文截取:mb_substr() mb_substr( $str, $start, $length, $encoding ) $str,
- 在进行文本分析、提取关键词时,新闻评论等文本通常是中英文及其他语言的混杂,若不加处理直接分析,结果往往差强人意。下面对中英文文本进行分离做一
- openlayer是目前我们gis常用的一款开源的,并且反馈都特别好的软件了,像之前的ol3, 风靡一时,地图实现也很简单,很实用,目前vu
- VUE-ElementUI 时间区间选择器官方文档中使用picker-options属性来限制可选择的日期一、单个输入框<el-dat