Excel VBA Макросы: Макрос проверки значений в одном столбце.

Автор Посетитель, 23 июля 2019, 08:32

Посетитель

Как с помощью макроса проверить ячейки в столбце S? Если в какой-то ячейке число 1, макрос должен прокрутить лист к строке, в которой эта ячейка, и выдать сообщение: Выберите пункт.

[вложение удалено администратором]

Администратор

Макрос
Sub Макрос()

    Dim arr(), lr As Long, i As Long
   
   
    '1. Поиск последней строки в столбце S.
        ' End не ищет в скрытых строках.
    lr = Cells(Rows.Count, "S").End(xlUp).Row
   
    '2. Копирование данных из столбца S в vba-массив.
        ' С vba-массивом макрос быстрее работает, чем с эксель-ячейками, если данных много.
    arr() = Range("S1:S" & lr).Value
   
    '3. Проверка, что в столбце S нет единиц.
    For i = 1 To UBound(arr)
        If arr(i, 1) = 1 Then
            ActiveWindow.ScrollRow = i
            MsgBox "Выберите пункт.", vbExclamation
            Exit Sub
        End If
    Next i
   
End Sub
[свернуть]

Посетитель