Автор Тема: Excel VBA Макросы: Поиск значения на листе и активирование найденной ячейки.  (Прочитано 36 раз)

Оффлайн Rengame113

  • Посетитель форума
  • Сообщений: 97
Помогите решить задачу. Производится поиск на листе. Если найдено значение, то активируется ячейка с этим значением, если этого значения нет, то выполняется другое действие.

Оффлайн Администратор

  • Administrator
  • Сообщений: 1686
Макрос
Sub Макрос()

    Dim rng As Range


    ' Поиск значения по всему листу с помощью диалога "Найти и заменить".
        ' Если будет найдено, то в переменной "rng" будет ссылка на найденную ячейку.
        ' Если не будет найдено, то в переменной "rng" будет слово "Nothing".
    Set rng = Cells.Find(What:="значение", LookIn:=xlFormulas, LookAt:=xlWhole, SearchOrder:=xlByRows, _
        SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
       
    ' Если найдено.
    If Not rng Is Nothing Then
       
        ' Установка курсора-рамки в найденную ячейку.
        rng.Select
       
    ' Если не найдено.
    Else
       
        ' Сюда запишите действия, который должен сделать макрос, если не найдено.
        MsgBox "Не найдено.", vbInformation
       
    End If
   
End Sub

Про параметры метода "Find" написано здесь: https://forumvba.ru/index.php?topic=1523.msg10425#msg10425