Лист активации VBA | Примеры VBA для активации листа Excel

Лист активации Excel VBA

Во время работы в VBA мы иногда ссылаемся на другой лист или используем свойства другого листа, предположим, что мы работаем на листе 1, но нам нужно значение из ячейки A2 на листе 2, если мы обратимся к значению листа 2, не активируя сначала лист, мы будем не иметь доступа к значению, поэтому для активации листа в VBA мы используем свойство листа как Рабочие листы («Лист2»).

В Excel мы всегда работаем с листами. У рабочих листов есть собственное имя, чтобы их было легче идентифицировать. При обычной работе с электронными таблицами мы напрямую перемещаемся по горячим клавишам или напрямую выбираем лист, щелкая по ним. Однако в VBA это не так просто: нам нужно указать имя листа, на который мы ссылаемся, тогда мы можем использовать метод «Выбрать», чтобы выбрать лист.

Что такое метод активации VBA?

Как следует из названия, он активирует указанный рабочий лист. Чтобы активировать лист, нам нужно указать точное имя рабочего листа, используя объект worksheets. Например, если вы хотите активировать лист под названием «Продажи», вы можете использовать приведенный ниже код.

Рабочие листы («Продажи»). Активировать

Синтаксис

Итак, синтаксис метода Activate следующий.

Рабочий лист («Название листа»). Активировать

Здесь рабочий лист является объектом, а активирует метод.

Вы можете скачать этот шаблон VBA Activate Sheet Excel здесь - VBA Activate Sheet Excel Template

Пример # 1 - Активировать лист по его порядковому номеру

В Excel мы работаем с несколькими наборами листов, и часто нам нужно переходить от одного листа к другому, чтобы выполнить работу. В VBA мы можем использовать метод Activate, чтобы активировать конкретный лист Excel.

Например, я создал три листа с названиями «Продажи 2015», «Продажи 2016» и «Продажи 2017».

Мы можем активировать листы двумя способами. Один - с использованием порядковых номеров листов, а другой - с использованием самого имени листа.

Теперь, если я хочу выбрать 2-й лист, я буду использовать объект Worksheet и указать номер индекса листа как 2.

Код:

 Sub Activate_Example1 () Рабочие листы (2). Активировать End Sub 

Когда вы запускаете код с помощью клавиши F5 или вручную, это активирует второй лист, то есть «Продажи 2016».

Если я хочу активировать 3-й лист, я буду использовать 3 в качестве порядкового номера листа.

Код:

 Sub Activate_Example1 () Рабочие листы (3). Активировать End Sub 

Это активирует третий лист, то есть «Продажи 2017».

Теперь поменяю местами 2-й и 3-й лист.

Теперь технически «Продажи 2017» - это мой третий лист, а «Продажи 2016» - мой второй лист. Теперь я буду использовать порядковый номер листа как 3 и посмотрю, что произойдет.

Код:

 Sub Activate_Example1 () Рабочие листы (3). Активировать End Sub 

С моей точки зрения, он должен выбрать лист «Продажи 2017», но он выберет лист «Продажи 2016», потому что в заказе «Продажи 2016» является третьим листом.

Таким образом, всегда можно активировать лист по его имени.

Пример # 2 - Активировать лист по его имени

Теперь посмотрим, как активировать листы по его имени. Вместо порядкового номера листа нам нужно указать имя листа в двойных кавычках.

Код:

 Sub Activate_Example2 () Worksheets («Продажи 2016»). Активировать End Sub 

Когда вы запускаете код вручную или с помощью сочетания клавиш F5, это активирует лист «Продажи 2016» независимо от положения в книге.

Не только объект «Листы», мы также можем использовать объект «Листы» для активации листа.

Ниже приведен код.

Код:

 Sub Activate_Example2 () Sheets («Продажи 2016»). Активировать End Sub 

Рабочие листы могут получить доступ только к объекту «Рабочие листы» и не могут получить доступ к листам «Диаграммы». Если вы используете объект Sheets, мы можем получить доступ ко всем листам в книге.

Пример # 3 - Активировать лист из другой книги

Подобно тому, как нам нужно упомянуть имя листа, чтобы активировать конкретный лист, аналогично в случае активации листа из другой книги также требуется имя «Рабочая книга».

Код:

 Sub Activate_Example3 () Рабочие книги («Sales File.xlsx»). Sheets («Sales 2016»). Активировать End Sub 

Это активирует лист «Продажи 2016» из книги «Файл продаж.xlsx».

Активировать лист или выбрать метод листа

Мы можем использовать методы для выполнения одного и того же действия, то есть методы Activate и Select. Между этими двумя методами есть небольшая разница.

# 1 - Активировать метод

Используя метод Activate, мы можем активировать только указанный рабочий лист.

Например, посмотрите на приведенный ниже код.

Код:

 Sub Activate_Example () Worksheets («Продажи 2016»). Активировать End Sub 

Как мы знаем, этот код выберет рабочий лист «Продажи 2016».

# 2 - Выберите метод

Используя метод Select, мы можем выполнять и другие задачи.

Теперь посмотрите на приведенный ниже код.

Код:

Этот код не только активирует лист «Продажи 2016», но также выбирает диапазон ячеек от A1 до A10.