人气 4471

[Excel技巧] Excel vba 自定义函数使用正则表达式提取字符串中的数值 [复制链接]

多看少说没错- 2017-9-16 16:38:28
前面我们讲解过提取字符串中的数值的方法。用函数即可简单提取。
下面再讲一下如何用正则表达式 来提取字符串中符合条件的字符。如下图所示:

1505550612865196.jpg

1505550612865196.jpg

从一个单元格中提取出连续出现的数字,并且用空格分割开
操作步骤:
  • 打开VBE界面操作界面,菜单栏上中选择插入,插入模块
  • 编写以下自定义函数,保存即可FunctionREFIND(str,re)
    DimRegAsNewRegExp
    WithReg
    .Global=True
    .Pattern=re
    Setmatchs=.Execute(str)
    ForEachMatchInmatchs
    y=y&""&Match
    Next
    EndWith
    'MsgBoxy
    REFIND=y
    EndFunction
  • 调用函数,单元格内输入=REFIND(A3,"\d{2,}")[/ol]
    注意:因为用到正则表达式,需要引用 Microsoft VBScript Regular Expressions 5.5
  • 您需要登录后才可以回帖 登录 | 立即注册

    QQ|手机版|精益人 ( 沪ICP备19004111号-1 )

    GMT+8, 2024-5-19 03:01 , Processed in 0.237128 second(s), 22 queries .

    Powered by Lean.ren X3.5 Licensed  © 2001-2030 LEAN.REN