Страницы: 1
RSS
Найти совпадения в столбце с имеющимся значением и указать их адреса, Значение J1 найти в столбце B и адреса всех совпавших ячеек вынести в столбец I
 
Здравствуйте!
Необходимо пройтись по столбцу B и найти ячейки с фамилией, указанной в J1.
В столбце I указать номер строки всех ячеек из столбца B, в которых встретилась фамилия из J1.
Желательно, чтобы в I адреса выстроились вверх по порядку без пропусков.
Спасибо!
 
Код
Sub FIO()
Dim iFIO As String
Dim FirstFIO As String
Dim FoundFIO As Range
Dim iLR As Long
  Range("J2:J" & Cells(Rows.Count, "J").End(xlUp).Row + 1).ClearContents
        iFIO = Cells(1, "J")
            Set FoundFIO = Columns("B").Find(iFIO, , xlValues, xlWhole)
        If Not FoundFIO Is Nothing Then
            FirstFIO = FoundFIO.Address
            Do
              iLR = Cells(Rows.Count, "J").End(xlUp).Row + 1
              Cells(iLR, "J") = FoundFIO.Address
                Set FoundFIO = Columns("B").FindNext(FoundFIO)
            Loop While FoundFIO.Address <> FirstFIO
        Else
            Cells(2, "J") = "Нет такой фамилии в столбце B"
        End If
End Sub
 
Здравствуйте!
Формула массива:
Код
=ЕСЛИОШИБКА(НАИМЕНЬШИЙ(ЕСЛИ(J$1=B$2:B$101;СТРОКА($2:$101));СТРОКА(J1));"")
 
А просто номера всех строк через запятую в ячейку, не подойдет?
массивная в I1
Код
=ОБЪЕДИНИТЬ(", ";;ЕСЛИ(J1=$B$2:$B$101;СТРОКА($B$2:$B$101);""))
формла для Excel 2016 и выше или подписка 365
 
Еще вариант.
Изменено: memo - 16.11.2019 20:32:00
 
ну и пролетарский приземленный вариант с доп. столбцом и результатом
По вопросам из тем форума, личку не читаю.
 
Спасибо всем большое! Буду разбираться.
Страницы: 1
Наверх