Cобытия объекта Workbook

Объект Workbook имеет достаточно много событий. Здесь мы рассмотрим только наиболее распространенные.

Событие Activate

Данное событие происходит при активизации рабочей книги, рабочего листа, листа диаграммы или внедренной диаграммы. Для активизации объекта можно использовать метод Activate или интерфейс пользователя.

Событие Deactivate

Cобытие Deactivate происходит, когда рабочая книга, рабочий лист, лист диаграммы или внедренная диаграмма становятся неактивными.

Событие NewSheet

Событие NewSheet возникает в случае создания листа в рабочей книге. Процедура обработки данного события имеет один параметр Sh, который представляет собой созданный лист (объект Worksheet или Chart).
Ниже представлен пример процедуры обработки события NewSheet, в соответствии с которым вставка нового листа сопровождается перемещением его в самое начало:

 Private Sub Workbook_NewSheet(ByVal Sh as Object) Sh.Move Before:= Sheets(l) End Sub

Событие SheetActivate

Событие SheetActivate возникает в процессе активизации какого-либо листа в рабочей книге. Процедура обработки данного события, так же как и в предыдущем случае, имеет один параметр Sh.

Событие Open

Событие Open происходит при открытии рабочей книги. Представленный ниже пример процедуры обработки данного события разворачивает окно MS Excel на весь экран:

 Private Sub Workbook_Open() Application.WindowState = xlMaximized End Sub

Событие BeforeClose

Событие BeforeClose возникает перед закрытием рабочей книги. В том случае если в рабочей книге имеются не сохраненные изменения, то это событие происходит перед тем, как пользователю будет выдан запрос на сохранение изменений. Процедура обработки данного события имеет один аргумент Cancel. Этот аргумент позволяет отменить закрытие книги, если в процедуре обработки события ему присвоить значение True.

Событие BeforeSave

Событие BeforeSave происходит перед тем, как рабочая книга будет сохранена. Процедура обработки данного события имеет два параметра: SaveAsUi и Cancel Для вывода окна диалога Сохранение документа на экран параметру SaveAsUi необходимо присвоить значение True. Как и в предыдущем случае, аргумент Cancel позволяет отменить сохранение в рабочей книге, если ему задать значение True.