是否可以按VBA中的内容查找单元格?

BuZ*_*uZz 0 excel vba excel-vba

我希望找到包含给定文本的单元格(作为范围).这可能吗?我希望能够找到匹配文本的第一个单元格(遵循行和列的自然顺序).

那么,一个更高级的问题,我可以提供一个正则表达式来做同样的事情吗?

感谢你们 :)

cha*_*nce 5

这是一个示例代码.替换Range("A1:D10")您的范围,并用您自己的正则表达式ni函数RE6替换.

Sub SUB1()
    For Each c In Worksheets("Sheet1").Range("A1:D10").Cells
        If RE6(c.Value) Then 
             c.Interior.ColorIndex = 7
        END IF
    Next
End Sub

    Function RE6(strData As String) As String 
        Dim RE As Object, REMatches As Object 

        Set RE = CreateObject("vbscript.regexp") 
        With RE 
            .MultiLine = False 
            .Global = False 
            .IgnoreCase = True 
            .Pattern = "[0-9][0-9][0-9][0-9][0-9][0-9]" 
        End With 

        Set REMatches = RE.Execute(strData) 
        RE6 = REMatches(0) 

    End Function 
Run Code Online (Sandbox Code Playgroud)