阅读量:5
在VBA中,可以使用循环和多个.FindNext方法来实现多个查找操作。下面是一个示例代码:
Sub MultipleFindNext() Dim rng As Range Dim firstAddress As String Dim searchValue As String searchValue = "apple" ' 设置查找范围 Set rng = Range("A1:A10") ' 查找第一个匹配项 With rng Set cell = .Find(What:=searchValue, LookIn:=xlValues, LookAt:=xlWhole) ' 如果找到了匹配项 If Not cell Is Nothing Then firstAddress = cell.Address Do ' 处理找到的每个匹配项 ' 例如:在找到的单元格上应用格式或执行其他操作 cell.Font.Bold = True ' 继续查找下一个匹配项 Set cell = .FindNext(cell) ' 如果找到了第一个匹配项,则退出循环 If cell.Address = firstAddress Then Exit Do Loop While Not cell Is Nothing End If End With End Sub
上述代码中,首先设置了要查找的范围rng和要查找的值searchValue。然后使用第一个.Find方法查找第一个匹配项,并使用一个循环来处理每个匹配项。在循环内部,使用.FindNext方法继续查找下一个匹配项。循环会一直执行,直到再次找到第一个匹配项为止。在处理每个匹配项时,可以执行自定义的操作,例如应用格式或执行其他操作。