Ссылка на активную рабочую книгу, лист, ячейку, диаграмму и принтер



VBA и MS Excel

В данном разделе вы познакомитесь с объектной моделью Excel. Узнаете о ее основных объектах: Application, Workbook, Worksheet, Range и Selection.

Познакомитесь со свойствами, методами и событиями, связанными с этими и другими базовыми объектами Excel. Узнаете, как получить данные из закрытой книги, вводить в диапазон неповторяющиеся значения, установить выполнение специфицированной процедуры при нажатии заданной комбинации клавиш, как создается надстройка и конструируется пользовательская функция, как переопределить горячие клавиши приложения, озвучить текст, произвести условное форматирование, управлять уровнем безопасности, отображать результат только при условии ввода всех данных, проверять вво­димые значения.

Объектная модель

Объектная модель MS Excel представляет собой иерархию объектов, подчиненных одному объекту Application, который соответствует самому приложению Excel. Многие из этих объектов собраны в библиотеке объектов Excel, но некоторые из них, например, объект Assistant, входят в библиотеку объектов MS Office, которая является общей для всех офисных приложений. На рис. 5.1 собраны основные компоненты объектной модели MS Excel. На этом рисунке имена единичных объектов находятся в прямоугольниках с более темным фоном. Каждый из объектов будет обсужден по ходу рассмотрения, поэтому в данный момент ограничимся только представлением общей схемы объектной модели.

Полная и неявная ссылка на объект

Полная ссылка на объект состоит из ряда имен вложенных последовательно друг в друга объектов. Разделителями имен объектов в этом ряду являются точки, ряд начинается с объекта Application и заканчивается именем самого объекта.


Рис. 5.1. Объектная модель MS Excel

 

Например, полная ссылка на ячейку А1 рабочего листа Продажи рабочей книги с именем Архив имеет вид:

Application.Workbooks("Архив").Worksheets("Продажи").Range("A1")

Приводить каждый раз полную ссылку на объект совершенно не обязательно. Обычно достаточно ограничиться только неявной ссылкой на объект. В неявной ссылке, в отличие от полной, объекты, которые активны в данный момент, как правило, можно опускать. В рассмотренном случае, если ссылка на ячейку А1 дана в программе, выполняемой в среде Excel, то ссылка на объект Application может быть опущена, т. е. достаточно привести относительную ссылку:

Workbooks("Архив").Worksheets("Продажи").Range("A1")

Если в этом примере ссылки рабочая книга Архив является активной, то ссылку можно еще сократить:

Worksheets("Продажи").Range("А1")

Если и рабочий лист Продажи активен, то в относительной ссылке вполне достаточно ограничиться упоминанием только диапазона А1:

Range("A1")

Объект Application

Объект Application — это главный (корневой) объект в иерархии объектов MS Excel, представляющий само приложение MS Excel. Он имеет огромное число свойств и методов, которые позволяют установить общие параметры приложения MS Excel.

Свойства объекта Application

Объект Application благодаря обширной коллекции свойств позволяет программно установить значения многих опций окна Параметры , отображаемого при выборе команды Сервис►Параметры . Кроме того, он обеспечивает доступ к объектам верхнего уровня типа ActiveCell, ActiveSheet и т. д. Перечислим основные свойства этого объекта.

ActiveCell ActiveChart
ActivePrinter ActiveSheet
ActiveWorkbook AddIns
AlertBeforeOverwriting Assistant
AutoCorrect AutoFormatAsYouTypeReplaceHyperlinks
AutomationSecurity AutoRecover
CalculateBeforeSave Calculation
CalculationState Caption
CellDragAndDrop Cells
Charts Columns
Cursor DataEntryMode
DefaultFilePath DefaultSaveFormat
DefaultWebOptions Dialogs
DisplayAlerts DisplayCommentIndicator
DisplayFormulaBar DisplayFullScreen
DisplayScrollBars DisplaystatusBar
EditDirectlylnCell EnableCancelKey
FileSearch FoundFiles
Height Left
LibraryPath MemoryFree
MemoryTotal MemoryUsed
Names OperatingSystem
OrganizationName Path
ProductCode RecentFiles
ReferenceStyle ScreenUpdating
Selection Sheets
StatusBar ThisWorkbook
Top UsableHeight
UsableWidth UserName
Version Width
Windows WindowState
WorksheetFunction

Ссылка на активную рабочую книгу, лист, ячейку, диаграмму и принтер

Свойства ActiveWorkbook, ActiveSheet, ActiveCell, ActiveChart, ActivePrinter объекта Application возвращают активную рабочую книгу, лист, ячейку, диаграмму и принтер. Объект ActiveCell содержится в ActiveSheet, а объекты ActiveSheet и ActiveChart и ActiveWorkbook.

В следующем примере (листинг 5.1) в активной ячейке устанавливается красный цвет фона с зеленым полужирным шрифтом и в нее вводится строка текста "Май". Активный рабочий лист переименовывается в отчет за май, а цвет его ярлыка назначается желтым.

Sub DemoActives()

With ActiveSheet

.Tab.Colorlndex = 27

'          Желтый цвет

.Name = "Отчет за май"

End With

With ActiveCell

.Font.Bold = True

.Font.Color = vbGreen

'          vbGreen — встроенная константа, задающая зеленый цвет

.Value = "Май"

.Interior.Color = vbRed

'          vbRed — встроенная константа, задающая красный цвет

End With

End Sub


Дата добавления: 2019-02-12; просмотров: 184; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!