1. Небольшое дополнение: Если методом Find задать поиск по всему столбцу, то он (поиск) начнется со 2-ой строки. Т. е. если ячеек, удовлетворяющих поиску много, и если одна из них находится в 1-ой строке, то метод Find вернет не первую ячейку, а следующую.
2. Посмотрите другой пример, в котором отсутствует указанная выше проблема и количество искомых элементов не ограничено.
Код |
---|
Option Base 1
Private Sub CommandButton1_Click()
Dim i As Long, j As Long, a(), q
a = Array("АА", "ББ", "пп") 'Массив искомых значений
For i = 1 To Cells(Rows.Count, 2).End(xlUp).Row
j = 0
For Each q In a
If InStr(Cells(i, 2), q) = 0 Then Exit For Else j = j + 1
Next
If j = UBound(a) Then
[F5] = i: Exit Sub
End If
Next
End Sub |
Пример во вложении.