Excel VBA — это объектно-ориентированный язык программирования, что означает, что в Excel каждый компонент является объектом. Надмножеством всех объектов Excel является само приложение Excel. Объект приложения Excel является корневым для всех других объектов в Excel. Он содержит объект Workbook.
Объект Workbook содержит другой объект, такой как объект Worksheet, который включает в себя все рабочие листы, присутствующие в конкретной книге. Объект Worksheet содержит объект Cells. Для выполнения любой задачи или операции в Excel нам необходимо следовать этой иерархии объектов Excel.
- Объект Workbooks
- Как ссылаться на рабочую книгу в VBA?
- По имени
- По номеру
- По свойству ActiveWorkbook
- Методы доступа к свойствам рабочей книги
- Доступ к методам объекта Workbooks
- Доступ к свойствам объекта Workbooks
- Объект Worksheets
- Как ссылаться на рабочий лист в VBA?
- По имени
- По номеру
- По свойству ActiveSheet
- Метод доступа и свойства рабочего листа
Объект 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 с помощью оператора точка(.).