Excel 求教一个用VBAif函数模糊匹配文本的问题

  背景是这样的我手上有一份统计表,需要将IP地址里的省市提取出来以便于处理。因此我首先想到了Python里的正则表达式打算写一个自定义函数去批量提取。然而之湔没学VBA里的正则表达式语法因此就去网上搜了一下,结果发现根本不能运行几经辗转,总算搞定因此总结一下,供后来者参考

  1、我是先在 Python中验证了正则表达式再copy到VBA中应用的,结果发现根本不能用可能VBA跟Python的正则表达式语法还是有点不同的。

  主要涉及的知识點:VBA函数、正则表达式

  1、rng As Range, name:传递两个参数第一个参数为单元格参数。

  Global:表示是否进行全局检索True表示将所有匹配的结果返回。False則是只返回第一个匹配结果

  6、提取省市 = mat.Item(0).Value:前面我们提到mat是一个matchcollection类型的集合,mat.Item(0)表示读取第一个匹配结果Value表示读取它的值。最后将这個值赋给函数也可以不用后面的value。

我要回帖

更多关于 if函数模糊匹配文本 的文章

 

随机推荐