Excel VBA Макросы. Как сделать нужный лист активным?

Автор Few, 21 ноября 2021, 18:19

Few

У меня есть код, который открывает файл Excel и берёт данные из активного листа.
В некоторых случаях активный лист не тот, который нужно, и макрос берёт данные не из того листа.
Какой код делает нужный лист активным? Имя нужного листа "Часы". Макрос должен брать данные из листа "Часы".

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

Сделать лист активным можно так:
Sub Макрос()
    Worksheets("Часы").Select
End Sub

Но в большинстве случаев нет необходимости переходить на нужный лист. Можно извлекать данные и из неактивного листа. Например, этот макрос берёт данные из листа "Часы" без перехода на него.

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

    Dim ЛистЧасы As Worksheet
   
    ' Создание ссылки на лист.
    Set ЛистЧасы = Worksheets("Часы")
   
    ' Извлечение значения из листа "Часы", из ячейки A1.
        ' Результат выводится в View - Immediate Window.
    Debug.Print ЛистЧасы.Range("A1").Value
   
End Sub
[свернуть]