Рабочие листы VBA

Таблицы Excel VBA

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

В VBA рабочий лист является объектом. Существует два способа обращения к рабочему листу: один с использованием объекта «Рабочий лист», а другой — с использованием объекта «Листы».

Я знаю, что ваш вопрос заключается в том, в чем разница между ними. В Excel мы можем видеть два типа листов: один — обычные листы, а другой — листы диаграмм.

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

Название рабочих листов

В приведенном выше у нас есть в общей сложности 5 листов. Из этих 5 листов 3 рабочих листа и 2 листа диаграмм.

Здесь «Рабочий лист» количество равно 3, а «Простыни» количество равно 2.

Теперь посмотрите на изображение ниже.

Рабочие листы

Здесь все листы являются рабочими листами, поэтому количество «Рабочих листов» и «Листов» равно 3.

Итак, как часть кода, если вы хотите использовать рабочие листы, объекты запоминают этот момент.

Синтаксис рабочих листов VBA

Как я уже сказал, рабочий лист является объектной переменной. Однако у этого тоже есть синтаксис.

Синтаксис рабочих листов

Индекс — это не что иное, как номер рабочего листа, на который мы ссылаемся. Как вы можете видеть в конце, он упоминается как Объект.

Например, Рабочий лист(1).Выбрать означает выбор первого рабочего листа рабочей книги. Неважно, как называется рабочий лист; независимо от того, будет ли выбран рабочий лист, вставленный первым в рабочую книгу.

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

Например, Рабочий лист («Лист продаж»). Выберите означает выбор листа с именем «Лист продаж». Здесь не имеет значения, какой номер рабочего листа, он всегда выбирает указанный рабочий лист.

Как использовать объект рабочих листов в VBA?

Вы можете скачать этот шаблон объекта рабочего листа VBA здесь — Шаблон объекта рабочего листа VBA

Пример №1

Например, предположим, что в вашей рабочей книге всего 5 листов, и названия этих рабочих листов — «Рабочий лист 1», «Рабочий лист 2», «Рабочий лист 3», «Лист диаграммы 1» и «Лист диаграммы 2».

Пример рабочих листов VBA 1

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

Рабочий лист (2). Выбирать означает, что он выберет второй рабочий лист книги.

Код:

Sub Worksheet_Example1()

  Worksheets(2).Select

End Sub
Пример рабочих листов VBA 1-1

Я запущу этот код с помощью клавиши F5 или вручную и посмотрю результат.

Примеры рабочих листов VBA 1-2

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

Код:

Sub Worksheet_Example1()

  Worksheets(3).Select

End Sub
Примеры рабочих листов VBA 1-3

Теперь посмотрите, что происходит, когда вы запускаете код вручную или с помощью кода клавиши F5.

Примеры рабочих листов VBA 1-4

Если вы посмотрите на изображение выше, оно выбрало 4й рабочий лист, когда я попросил выбрать 3рд рабочий лист.

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

Чтобы выбрать третий лист из всех листов книги, используйте объект Sheets.

Код:

Sub Worksheet_Example1()

Листы(3).Выбрать

Конец сабвуфера

Примеры рабочих листов VBA 1-5

Теперь он выберет именно третий лист.

Примеры рабочих листов VBA 1-6

Пример № 2. Выбор рабочих листов по имени

Выбор листов по имени — это точный способ обращения к листу. Например, если мы хотим выбрать лист «Рабочий лист 3», вы можете использовать приведенный ниже код.

Код:

Sub Worksheet_Example2()

   Worksheets("Worksheet 3").Select

End Sub
Пример рабочих листов VBA 2

Это позволит выбрать точный лист; не имеет значения, где он находится в книге.

Пример рабочих листов VBA 2-1

Но если вы попытаетесь получить доступ к листу диаграммы с помощью объекта «Рабочие листы», мы получим «Ошибка нижнего индекса вне диапазонаОшибка нижнего индекса вне диапазонаИндекс вне диапазона — это ошибка в VBA, которая возникает, когда мы пытаемся сослаться на что-то или на переменную, которых нет в коде. Например, если у нас нет переменной с именем x, но мы используем функцию msgbox для x, мы получим ошибку нижнего индекса вне диапазона.читать далее».

Код:

Sub Worksheet_Example2()

  Worksheets("Chart Sheet 1").Select

End Sub
Пример рабочих листов VBA 2-2

Запустите этот код через клавишу F5 или вручную и посмотрите результат.

Примеры рабочих листов VBA 2-3

Пример № 3. Проблема с именем рабочего листа

Есть еще одна проблема со ссылками на листы по имени. Если кто-то изменит имя рабочего листа, мы снова получим «Ошибка нижнего индекса вне диапазона».

Чтобы решить эту проблему, перейдите в редактор Visual Basic, нажав кнопку ALT + F11 ключ.

Пример 3-1

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

Пример 3

В этих свойствах окно меняет имя рабочего листа на ваше имя.

Пример 3-2

Здесь есть одна интересная вещь: несмотря на то, что мы изменили имя рабочего листа с «Рабочий лист 1» на «WS1», мы все еще можем видеть то же имя в рабочей книге.

Пример рабочих листов VBA 3-3

Теперь мы можем ссылаться на этот лист по имени «WS1».

Код:

Sub Worksheet_Example2()
 
  Worksheets("WS1").Select

End Sub
Примеры рабочих листов VBA 3-4

Теперь не имеет значения, кто изменяет имя рабочего листа. Тем не менее, наш код ссылается на один и тот же лист, пока он не меняет в редакторе Visual Basic.

Пример № 4 — Получить общее количество листов в книге

Рабочий лист — это объект, и мы можем использовать все свойства и методы, связанные с ним. Что мы делаем с рабочими листами?

Вставляем рабочие листы. Мы переименовываем рабочие листы. Мы удаляем рабочие листы и многое другое, что мы делаем с ним.

Войдите в объект «Рабочие листы» и поставьте точку, чтобы увидеть все варианты с ними.

Пример 4

Чтобы получить количество рабочих листов, используйте Свойство счетчика VBAСвойство счетчика VBAФункция подсчета в VBA подсчитывает, сколько ячеек содержит значения. Учитываются ячейки с числами или текстом, заключенными в двойные кавычки, а также те, значения которых вводятся напрямую. Однако ячейки, содержащие случайные данные, которые Excel не может преобразовать, не учитываются.читать далее.

Код:

Sub Worksheet_Example3()

  Dim i As Long

  i = Worksheets.Count

  MsgBox i

End Sub
Пример 4-1

Это покажет количество рабочих листов.

Пример рабочих листов VBA 4-2-2
Пример 4-3

Несмотря на то, что есть 5 листов, мы получили 3 счета, потому что другие 2 листа являются листами диаграмм.

Чтобы получить общее количество листов, используется объект «Листы».

Код:

Sub Worksheet_Example3()

  Dim i As Long

  i = Sheets.Count

  MsgBox i

End Sub
Примеры рабочих листов VBA 4-4

Это покажет полное количество листов.

Примеры рабочих листов VBA 4-5
Пример 4-3

Пример № 5 – Методы, использующие объект рабочего листа

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

Добавить новый лист.

Worksheet.Add

Чтобы удалить рабочий лист

Worksheet(“Sheet Name”).Delete

Чтобы изменить имя рабочего листа

Worksheet(“Sheet Name”).Name = “New Name”

УЗНАТЬ БОЛЬШЕ >>

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *