Excel VBA – 在工作表中searchstring

我有这个Excel工作簿,我想在Sheet1中search特定的string。 如果find它,请input一个新值。 但是,表单非常庞大,所以我不认为循环遍历每个单元格会非常有效。 那么,我可以通过一个范围进行search并find它吗?

这是我到目前为止:

Dim rngSearchRange as range With ThisWorkbook.Sheets(1) Set rngSearchRange = .Range("A2:A" & .Range("A" & Rows.Count).End(xlUp).Row) End With 

我正在查找的string是三个值的数组中的第一个值。 那么,我怎么能search这个范围的特定string,find位置,然后input一个新的值?

我在想这个事情:

 Dim rngFindRange as range Set rngFindRange = rngSearchRange.Find(var(0), LookIn:=xlValues, lookat:=xlWhole) 

var(0)是我后面的数组中的值。 但是这条线并没有给我任何结果。 我在这里?

像这样的东西

 Sub FindMe() Dim ws As Worksheet Dim rngSearchRange As Range Dim rngFindRange As Range Dim Var Dim elemVar Var = Array("apples", "oranges", "fruit") Set ws = ThisWorkbook.Sheets(1) Set rngSearchRange = ws.Range(ws.[a2], ws.Cells(Rows.Count, "A").End(xlUp)) For Each elemVar In Var Set rngFindRange = rngSearchRange.Find(elemVar, LookIn:=xlValues, lookat:=xlWhole) If Not rngFindRange Is Nothing Then MsgBox elemVar & " found in " & rngFindRange.Address(0, 0) Else MsgBox elemVar & " not found in:" End If Next elemVar End Sub