前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >个人永久性免费-Excel催化剂功能第110波-当前行占位符替换

个人永久性免费-Excel催化剂功能第110波-当前行占位符替换

作者头像
Excel催化剂
发布2021-08-19 16:23:53
1.3K0
发布2021-08-19 16:23:53
举报
文章被收录于专栏:Excel催化剂

在过往的功能开发中,已经对查找替换功能做了一些增强,特别是引用了正则表达式的操作,但其替换的操作是批量性的替换,而非当前行的范围内替换,在大量的使用占位符替换某些内容时,多数是对当前行的替换,故重新开发一个对当前行的占位符的替换操作。

回顾下Excel催化剂现有的查找替换功能增强

首先在文本处理的功能中,已经有批量替换的功能存在,详见 第25波-小白适用的文本处理功能

其中有常见的中文、英文、数字等的清除,还有更强大的正则处理方式来查找符合条件的字符并替换。

在多个字符串多次替换的操作中,在第101波-批量替换功能(增加正则及高性能替换能力)中,也是作了实现。

无比低效的普通字符串连接法实现占位符替换

在我们需要将某几个单元格的内容串起来成为一个单元格内容时,无论使用CONCATENATE还是用&连接符,都是非常低效的,特别是在非占位符中有英文双引号时,更为如此,就如下图中,特意模拟了一些有英文双引号的例子。

经过抽象提取其逻辑后,其实我们更想要的效果是只需构造一个占位符的方式,然后有方法自动将占位符替换为对应的单元格内容即可,这将比使用公式的方式,不断地需要考虑双引号冲突了&符号两边都要加上双引号等操作方便得多。

当然这个对应关系是仅对当前行处理,而不是多行引用同一个内容。

后面视频里的演示效果不是最精简的,如下图,我们可以对替换的内容进行复用。

功能实现

功能实现有最终生成值和公式两种效果,给出两个按钮,一步到位。

具体实现步骤

  1. 将需要替换的文字部分用大括号括起来,让程序可识别到,如果原数据也有大括号,问题应该也不大,因程序识别的是{列字母}
  2. 同样地我们无需多行内容都构造,只需将顶行给构造好,余下同样规则的自动按顶行的内容来操作,留下的步骤就是需要选定要操作的数据区域,让程序好知道要替换哪些行哪些单元格(人性化地自动将隐藏行的单元格忽略处理)
  3. 最后根据需要生成的是值还是公式,选择不同的按钮即可完成,公式的话,当然后期引用列的内容更新了,可同步更新,某些场景上更有优势。

具体效果,给大家上视频动画,即可感受到它的无穷便利性,反正作为一个写代码的数据分析工作者,这样的替换场景经常发生,也是由自身需求导向来开发出此功能来。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Excel催化剂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 回顾下Excel催化剂现有的查找替换功能增强
  • 无比低效的普通字符串连接法实现占位符替换
  • 具体实现步骤
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档