VBA小技巧13:匹配大小写查找

2021-08-31 17:42:27 浏览数 (2)

有时候,我们需要执行区分大小写的查找,如下图1所示。

图1

我们要查找单词“Excel”,如果使用下面的程序代码:

Sub MatchCaseFind()

Dim rngSearch As Range

Set rngSearch = Range("A1:C3")

Dim rngFound As Range

Set rngFound =rngSearch.Find("EXCEL", lookat:=xlPart)

If rngFound Is Nothing Then

Debug.Print "没有找到!"

Else

Debug.Print rngFound

Debug.Print rngFound.Address

End If

End Sub

其结果如下图2所示。

图2

本来应该返回单元格A3中的值及其地址,但返回的是单元格B1中的值和地址。由于是执行区分大小写的查找,因此必须添加另外一个参数:MatchCase,该参数迫使VBA执行匹配大小写的查找。

因此,使用下面的代码:

Sub MatchCaseFind1()

Dim rngSearch As Range

Set rngSearch = Range("A1:C3")

Dim rngFound As Range

Set rngFound =rngSearch.Find("EXCEL", lookat:=xlPart, MatchCase:=True)

If rngFound Is Nothing Then

Debug.Print "没有找到!"

Else

Debug.Print rngFound

Debug.Print rngFound.Address

End If

End Sub

返回正确的结果,如下图3所示。

图3

小结

Find方法是一个很重要的常用方法,熟知其参数的用途,灵活使用该方法,获得正确的查找结果。

0 人点赞