Использование методов объектов
Методы объекта используются в операторах VBA также как любые встроенные процедуры.
Метод объекта имеет следующий синтаксис:
Object.Method
Для методов объектов, имеющих обязательные и необязательные аргументы, используется следующий синтаксис:
Object.Method Argumentl, Argument2, Argument3...
Object – любая допустимая объектная ссылка;
Method – имя любого метода, принадлежащего объекту, на который выполняется ссылка;
Argument1, Argument2 – аргументы в списке аргументов метода. Как в случае с аргументами для вызова процедуры VBA, необходимо перечислять аргументы метода в определенном порядке, отделяя каждый аргумент списке запятой и включая отмечающие запятые для пропущенных необязательных аргументов. Метод может иметь один или несколько аргументов в своем списке или не иметь их совсем; аргументы метода могут быть обязательными или необязательными.
Пример 4. Рабочие книги Excel имеют метод Activate, который делает рабочую книгу активной и активизирует первый лист в книге. Если задать переменную ThisWorkbookдля ссылки на объект рабочей книги, то приведенный ниже оператор активизирует эту рабочую книгу:
ThisWorkbook.Activate
Хотя метод Activate не имеет аргументов, многие методы объектов имеют один или более аргументов, например метод SaveAs объекта рабочей книги Excel; использует один обязательный аргумент и один из нескольких необязательных аргументов:
ThisWorkbook.SaveAs Filename:="C\Temp\NEWFILE.xls"
В таблице 3. приведены наиболее употребительные методы в Excel VBA
Метод | Назначение | Имеется в объектах |
Activate | Активизирует объект | Window, Workbook, Worksheet, Range и др. объектах |
Calculate | Выполняет вычисления в открытой рабочей книге, рабочем листе или диапазоне | Application, Range, Worksheet |
Clear | Удаляет данные, сохраненные в указанном объекте | Range |
Close | Закрывает указанный объект | Window, Workbook, Workbooks |
Justify | Выравнивает текст, сохраненный в указанном объекте | Range |
Run | Выполняет указанную процедуру или функцию | Application, Range |
Save | Сохраняет файл рабочей книги | Application, Workbook |
SaveAs | Сохраняет указанный объект в другом файле | Workbook, Worksheet |
Select | Выбирает указанный объект | Range, Sheets, Worksheets |
SendKeys | Пересылает нажатия клавиши в диалоговые окна в host-приложении | Application |
Volatile | Регистрирует функцию как изменяющуюся | Application |
Пример 5. Метод Clear для ячейки и диапазона
Sub TestMethodsOl()
'тестирование метода Clear
'содержимое активной ячейки до применения метода Clear
MsgBox ActiveCell.Formula, , "До метода Clear"
'выполнения Clear
ActiveCell.Clear
'содержимое активной ячейки
'после применения метода Clear
MsgBox ActiveCell.Formula, , "После метода Clear"
'Очистить диапазон ячеек:
Range("C6:D7").Clear
End Sub