Лекции VBA. Можно выделить следующие разновидности макросов
Скачать 314.53 Kb.
|
Работа с коллекциями объектов и контейнерами объектовКоллекция (collection) объектов — это группа связанных объектов, таких как все рабочие листы в рабочей книге или все символы в параграфе. Объект в коллекции называется элементом (element) этой коллекции. Сама коллекция является объектом; коллекции имеют собственные свойства и методы. Каждая коллекция, например, имеет свойство Count, которое возвращает число элементов в коллекции. Если в активной рабочей книге имеется 16 рабочих листов, то следующее выражение вычисляется до числа 16: Application.ActiveWorkbook.Worksheets.Count В этом выражении Worksheets — коллекция всех рабочих листов в рабочей книге, ActiveWorkbook — свойство Excel-объекта Application, возвращающее активную рабочую книгу, a Count — свойство коллекции Worksheets, возвращающее общее число рабочих листов в коллекции. Это простое выражение помогает проиллюстрировать то, что одни объекты содержат другие объекты.. Контейнер (container) — это любой объект, содержащий один или несколько других объектов. В данном примере Application содержит объект, на который ссылается ActiveWorkbook, содержащий в свою очередь, коллекцию объектов Worksheets. Все контейнерные объектные ссылки соединяются вместе с помощью точки- разделителя (.) для образования одного объектного выражения. Объект Application включает в себя коллекцию (семейство) объектов Книга (Workbook). Семейство книг называется Workbooks (в конец добавляется буква ―s‖ в английском языке это обозначает множественное число). Обратиться с конкретной книге в приложении можно указав название семейства – Workbooks и в скобках имя или номер книги. Например, Workbooks(―Книга.xls‖) или Workbooks(1). Объект Workbook является частью семейства Workbooks, хотя семейство Workbooks тоже является объектом. Кроме того, существует еще объект ActiveWorkbook – активная книга, который тоже является свойством объекта Application. Объекты и ActiveWorkbook являются одиночными объектами. Объект Workbooks - семейство. Объект Workbook содержит набор свойств объектов, которые будут перечислены ниже: объект семейство (коллекция) Worksheets – это рабочие листы конкретной рабочей книги. объект семейство Sheets – это рабочие листы в активной рабочей книге. объект семейство Windows – это все окна в конкретной рабочей книге. объект ActiveSheet - это активный рабочий лист в активной рабочей книге. Объект Worksheet является рабочим листом - элементом семейства Worksheets, но чтобы обратиться к конкретному листу из семейства надо указать имя или номер рабочего листа в коллекции. Например Worksheets(‖Лист1‖) или Worksheets(2). Объект APPLICATIONОбъект Application - это главный (корневой) объект в иерархии объектов Excel, представляющий само приложение Excel. Он имеет огромное число свойств и методов, позволяющих установить общие параметры приложения Excel. Кроме того, объект Application через свойство WorksheetFunction предоставляет возможность использовать в коде все встроенные функции рабочего листа. Это семейство возвращает WorksheetFunction объект, являющийся контейнером всех функций рабочего листа. Например, в следующем примере находится максимальное знчение из диапазона А1:А4: Макс=Application.WorksheetFunction. Max(Range("А1:А4")) Функции рабочего листа можно включать в код непосредственно через объект Application, опуская свойство WorksheetFunction. Например, в следующем примере переменной Pi присваивается значение Пи, а переменной Сумма присваивается значение суммы из диапазона А1:А4: Pi = Application.Pi() Сумма = Application.Sum(Range("A1:А4")) |