我正在尝试编写一个函数来搜索大约4,500列和100行的范围中的字符串,并返回匹配所在的行。此公式将被复制约6k单元格并需要不断更新因此,工作表就是一个功能。
我尝试使用Search.Find函数并返回行号,但速度太慢。这是我使用过的代码:
Function FindRow(Srch As String, SrchRng)
Dim rngSearch As Range, rngFound As Range
Set rngSearch = SrchRng
Set rngFound = rngSearch.Find(What:=Srch, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByColumns)
If rngFound Is Nothing Then
FindRow = "#N/A"
Else
FindRow = rngFound.Row
End If
End Function
该问题的更多细节:
-String必须完全匹配,长度约为50个字符
-Range我在搜索时有很多空白单元格,但只有一个完全匹配。