当前位置:首页 > 办公设计 > Office教程 > VBA之正则表达式:提取日期和金额

VBA之正则表达式:提取日期和金额

1年前 (2025-05-24)Office教程1320

实例需求:数据保存在A列中,需要将其中的日期和金额分别提取至B列和C列。其中日期也两种不同格式,金额可能包含小数点、千分符和货币标识。

示例代码如下:
Sub RegExp_Date_Num()
Dim Res()
Dim objRegEx As Object
Dim objMH As Object
Dim j As Integer
Set objRegEx = CreateObject("vbscript.regexp")
objRegEx.Pattern = "(\d{4}-\d{2}-\d{2}|\d{4}.\d{2}.\d{2}).*?(([A-Z]{3})*\d+[\d.,]*元)"
objRegEx.Global = True
For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
form = Cells(i, "A")
Set objMH = objRegEx.Execute(form)
If objMH.Count > 0 Then
Cells(i, 2) = CStr(objMH(0).submatches(0))
Cells(i, 3) = CStr(objMH(0).submatches(1))
End If
Next
Set objRegEx = Nothing
Set objMH = Nothing
End Sub

【代码解析】
第6行代码使用后期绑定创建正则对象。
第7行代码指定正则匹配字符串,

如果直接使用[\d.,]+匹配金额中的数字,则会匹配到单个小数点或者逗号,例如数据为:旧的一年结束,元旦将要来临,此模式可以将匹配到,元。由此可见组织一个严谨的正则表达式需要考虑很多情况。
第8行代码设置为全局搜索模式。
第9行代码第16行代码循环处理工作表中的数据。
第11行代码执行正则匹配,返回结果为MatchCollection集合对象。
第13行和第14行代码分别将日期和金额写入工作表中

扫描二维码推送至手机访问。

欢迎转载或分享本篇文章。

本文链接:https://www.jcba123.com/article/1513

分享给朋友:

“VBA之正则表达式:提取日期和金额” 的相关文章

毛茸茸的字体 | PPT打造虎皮字体

毛茸茸的字体 | PPT打造虎皮字体

咱们今天来学习一个既简单又漂亮的字体制作,老虎皮做的字体。当然,学习的是方法,你也可以利用各种动物皮毛来打造。 首先,需要一份素材,那就是动物皮毛,这里我就不提供了,大家可以到百度图片搜索一下“动物皮毛”,可以找到一堆的动物皮毛,随便选一个吧!建议找尺寸大点的图片。 输入文字...

5个典型应用,学会Excel高级筛选

5个典型应用,学会Excel高级筛选

1、筛选指定条件的记录 如下图所示,要从数据表中筛选出“产品归类”字段中是“信用贷”的所有记录。 首先在空白单元格中写入要筛选的字段名称和要筛选的条件。 注意字段名称要和数据表中的字段名称完全一样,否则就筛选不出来了。 单击数据区域任意单元格,在【数据】选项卡下单击【高级】按...

33个Excel一句话技巧!

以下这些技巧简单易记,记住几条,必可提高工作效率哦。 1、快速输入欧元符号 按住Alt键,再分别按数字键盘上的1、2、8,可输入欧元符号 € ,此技巧在Word、Excel中通用。 2、快速切换表格 快捷键组合“Ctrl+PageUp”切换到当前工作表单的前一个工作表;“Ctrl+Page...

SORTBY函数用得好,数据排序没烦恼

SORTBY函数用得好,数据排序没烦恼

在Excel 2021版本中,有一个专门用于排序的SORTBY函数,今天咱们就一起看看这个函数的一些典型用法。 函数用法为: =SORTBY(要排序的区域,要排序的主要关键列,[排序方式],[要排序的次要关键列],[排序方式],……) 1、单条件排序 如下图所示,要对D列的年龄排序。咱...

PPT制作教程:如何使用PowerPoint制作手绘粉笔字效果PPT教程

PPT制作教程:如何使用PowerPoint制作手绘粉笔字效果PPT教程

PPT制作教程:如何使用PowerPoint制作手绘粉笔字效果PPT教程 当您在观看别人的PowerPoint时候,是否经常会看到类似于粉笔字效果呢? 今天的教程就教大家使用PPT制作粉笔字效果的幻灯片,特别是老师制作PPT课件的时候非常适用哦。  ...

PPT将形状设置为创意图片

PPT将形状设置为创意图片

1.单击工具栏插入下的形状,在形状下选择圆角矩形。 2.插入一个矩形后,单击黄色小图形,拉动到中间,制作出一个圆形矩形。 3.复制粘贴处五个同样的圆形矩形,选中所有矩形,单击绘图工具下的组合,在下拉菜单当中选择组合。 4.组合后选择图片或纹理填充,图片来源选...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。