Рабочая книга и объект Worksheet в Excel VBA

Excel VBA — это объектно-ориентированный язык программирования, что означает, что в Excel каждый компонент является объектом. Надмножеством всех объектов Excel является само приложение Excel. Объект приложения Excel является корневым для всех других объектов в Excel. Он содержит объект Workbook.

Объект Workbook содержит другой объект, такой как объект Worksheet, который включает в себя все рабочие листы, присутствующие в конкретной книге. Объект Worksheet содержит объект Cells. Для выполнения любой задачи или операции в Excel нам необходимо следовать этой иерархии объектов Excel.

Объект Workbooks

В Excel VBA объект workbooks представляет коллекцию книг, которые одновременно открыты в приложении Excel. Именно по этой причине мы записываем его как объект множественного числа Workbooks, что означает, что он содержит более одной книги. Чтобы получить доступ к одной книге из объекта workbooks, мы можем использовать следующий VBA для доступа к нему по его имени.

Как ссылаться на рабочую книгу в VBA?

Для ссылки на рабочую книгу в Excel VBA мы можем использовать следующие различные методы:

По имени

Мы можем легко ссылаться на рабочую книгу, используя ее название. Нам нужно определить процедуру в VBA и объявить имя нашей книги excel. Убедитесь, что имя пользователя указано только в том случае, если рабочая книга не сохранена, в противном случае нам нужно определить имя вместе с его расширением.

По номеру

Приложение Excel поддерживает порядок индексации для всех открытых нами книг. Оно присваивает первой книге номера 1, 2 — второй книге и так далее. Мы также можем использовать эти цифры для ссылки на рабочую книгу.
Примечание: стало действительно трудно запомнить, какую книгу мы открывали в каком порядке. Таким образом, она используется гораздо реже.

По свойству ActiveWorkbook

Мы можем ссылаться на рабочую книгу, используя свойство ActiveWorkbook. Используя ActiveWorkbook, мы можем ссылаться на книгу, которая находится в активном состоянии, что означает, что книга открыта в Excel.

Методы доступа к свойствам рабочей книги

Как и в любом другом объектно-ориентированном языке программирования, в VBA всякий раз, когда мы ссылаемся на объект, он предоставляет нам доступ ко всем методам и свойствам этого объекта. Аналогичным образом, когда мы обращаемся к объекту Workbook, мы получаем доступ ко всем его свойствам и методам.

Доступ к методам объекта Workbooks

Для того, чтобы получить доступ к методам объекта workbook, мы будем использовать оператор dot(.). Как только мы используем наш объект workbooks, как только мы используем оператор dot(.), он отобразит список методов, связанных с этим конкретным объектом.

Доступ к свойствам объекта Workbooks

Аналогично методам, мы можем использовать оператор dot(.) для доступа к свойствам объекта workbook .

Как мы можем видеть, в данный момент в нашем Excel открыто 3 разных листа, если мы запустим нашу процедуру, она отобразит количество как 3 в окне сообщения.

Объект Worksheets

В Excel VBA объект worksheets представляет коллекцию рабочих листов, которые открыты в книге Excel. Именно по этой причине мы записываем его как объект множественного числа Worksheets, что означает, что он содержит более одного рабочего листа.

Как ссылаться на рабочий лист в VBA?

По имени

В Excel мы можем ссылаться на лист, используя его имя. По умолчанию Excel создает листы в натуральном порядке чисел. Например, Sheet1, Sheet2 и т.д. Мы также можем присвоить этим листам наше собственное имя.

По номеру

Мы также можем использовать номера листов для ссылки на лист в Excel. Две операции для ссылки на лист, Sheets() и Worksheets(), работают по-разному при обращении к листам по номерам.

Операция Рабочая
Количество листов (n) Используется для ссылки на n-й лист, начиная с первого листа
Рабочие листы (n) Используется для ссылки на сам n-й лист.

По свойству ActiveSheet

В Excel VBA мы также можем ссылаться на лист, используя свойство ActiveSheet.

Как и выше, мы видим, что у нас активен лист GFGCourse. Когда мы запустим нашу процедуру, появится окно сообщения с именем активного листа is.

Метод доступа и свойства рабочего листа

Подобно объекту Workbook, объект Worksheet также имеет различные методы и свойства. В Excel VBA мы можем получить доступ к методам и свойствам объектов листа Excel с помощью оператора точка(.).

Автор А. Днепров

Обучаю основам работы с офисными программами.

Рабочая книга и объект Worksheet в Excel VBA
Не удается корректно запустить приложение Office — ошибка 0xc0000142