excel利用正则匹配和替换指定内容

上班中, 突然接到电话, 屋里的上司大人发来个excel, 说要替换里面x-x-xxx列的内容为x栋x单元xxx. 大致表格如下, 原表格我就不发了

身为程序猿的我, 肯定第一就想到了 正则! 打开excel-开始-查找和替换, 我擦, 只能完全匹配和替换 比如一次只能替换1-1- -> 为1栋1单元 1-2- ->为1栋2单元..

虽然说慢了点, 终究是解决了问题!

为了解决问题而解决问题, 这可不是咱的风格, 因为这一个简单的需求实现的太不清爽了, 各种百度也没发现能直接查找和替换的方案, 😅.....简单的方法没找到, 却找到了个vb脚本写法, 记录下, 方便下次使用.

步骤一: 打开excel

步骤二: ALT+F11 打开VB窗口, 写入脚本, 执行

脚本内容:

java 复制代码
Private Sub RegExp_Replace()

    Dim RegExp As Object
    Dim SearchRange As Range, Cell As Range
    
    Set RegExp = CreateObject("vbscript.regexp")
    RegExp.Pattern = "(\d+)-(\d+)-(\d+)"
     
    Set SearchRange = ActiveSheet.Range("A1:A99")
    
    For Each Cell In SearchRange
        Set Matches = RegExp.Execute(Cell.Value)
        If Matches.Count >= 1 Then
            Set Match = Matches(0)
            Cell.Value = RegExp.Replace(Cell.Value, "$1栋$2单元$3")
        End If
    Next

End Sub

虽然实现了, 但还是不太爽!

相关推荐
AC赳赳老秦6 小时前
OpenClaw+Power Apps 实战:自动生成 Power Apps 应用、连接 Excel 数据源
大数据·开发语言·python·serverless·excel·deepseek·openclaw
tsfy200310 小时前
Python批量调整Excel格式,并排版导出PDF
python·pdf·excel
快乐的哈士奇13 小时前
Gmail-邮件自动处理系统
node.js·自动化·excel
123的故事1 天前
工具分享(7)-多Excel文件内容查询工具
c#·excel·实用工具
hikktn1 天前
Excel 导出 OOM 预防实战:30 万行从堆溢出到 50MB 的演进
java·excel·easyexcel
yunceqing2 天前
从Excel调度到TMS平台:物流软件开发避坑清单
大数据·前端·网络·人工智能·excel·推荐算法
什仙2 天前
Mathcad Prime 对比 Excel/MATLAB/Mathematica:核心优势速览
excel
快乐的哈士奇2 天前
【Next.js实战②】Excel 派送表动态解析:表头识别与 FIELD_ALIASES 映射
前端·javascript·excel
daols882 天前
vue vxe-table 复制数据到 Excel:支持带表头复制
vue.js·excel·vxe-table
海兰2 天前
【web应用】Excel 项目数据自动化分析系统(AI 驱动分析)详细设计与部署指南(附源代码)
前端·人工智能·自动化·excel