excel自定义一个具有Like运算符功能的工作表函数

网友投稿 1324 2022-12-03

excel自定义一个具有Like运算符功能的工作表函数

我们知道VBA中的Like运算符是用来比较两个字符串的,其语法为:

result = string Like pattern

如果string与pattern匹配,则result为True,如果不匹配,则result为False。Like运算符的比较方式比较灵活,除了可以使用通配符外,pattern中还可以使用中括号“[ ]”。在中括号“[ ]”中,可以用由一个或多个字符组成的组与 string 中的任一字符进行匹配。虽然用COUNTIF工作表函数可以实现类似的比较功能,但COUNTIF函数不支持中括号。为此,我们可以创建一个自定义函数来实现类似Like运算符的功能,使用起来非常方便。方法如下:

按Alt+F11,打开VBA编辑器,单击菜单“插入→模块”,将下列代码输入到代码窗口中:

Public Function IsLike(sText As String, _sPattern As String) As BooleanIsLike = IIf(sText Like sPattern, True, False)End Function

IsLike有2个字符串参数:sText和sPattern,sText类似于Like运算符的String, sPattern类似于Like运算符的pattern。其使用方法为:

=islike(sText,sPattern)

如果sText与sPattern匹配,则返回TRUE,否则FALSE。例如下面的公式:

excel自定义一个具有Like运算符功能的工作表函数

=islike("EXCEL技巧天地","E*")

该公式检测“EXCEL技巧天地”字符串是否已字母“E”开头,结果返回TRUE。又如:

=islike("EXCEL技巧天地","*[技巧]*")

检测“EXCEL技巧天地”字符串中是否包含“技”或“巧”,结果返回TRUE。如果在两个单元格中分别输入字符串和匹配字符,也可以用单元格地址代替参数,如下图:

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:excel利用VBA统计选定的单元格数量
下一篇:excel利用VBA批量修改工作表名称
相关文章