Объект Workbook и семейство Workbooks
В иерархии Excel объект Workbook (рабочая книга) идет сразу после объекта Application и представляет файл рабочей книги. Рабочая книга хранится либо в файлах формата XLS (стандартная рабочая книга) или XLA (полностью откомпилированное приложение). Свойства и методы рабочей книги позволяют работать с файлами. Объект входит в семейство (набор) Workbooks.
Ссылку на объект можно получить через свойства:
Workbooks(<Индекс>) – ‘Возвращает объект по индексу в наборе;
Workbooks(“<Имя>”) – ‘Возвращает объект по имени в наборе;
ActiveWorkbook – ‘Возвращает ссылку на активную книгу в момент выполнения команды;
ThisWorkbooks – ‘Возвращает ссылку на книгу, в которой находится текст исполняемого модуля.
3.2.1.Свойства объекта Workbook и семейства Workbooks
ActiveSheet – ‘Возвращает активный лист книги. Для получения имени листа используется свойство Name объекта Sheet.
Примеры:
MsgBox(“Имя активного листа “) & ActiveSheet. Name
или
MsgBox ActiveWorkbook. ActiveSheet. Name–‘В диалоговом окне выводит имя активного рабочего листа.
ActiveDialog – ‘Возвращает активное диалоговое окно.
ActiveChart – ‘Возвращает активную диаграмму.
Sheets – ‘Возвращает семейство всех листов книги.
Worksheets – ‘Возвращает семейство всех рабочих листов книги.
Пример:
Sub xjfchd()
For Each s In ActiveWorkbook. Sheets
MsgBox s. Name
Next s
End Sub
Charts – ‘Возвращает семейство всех диаграмм книги, которые не внедрены в рабочие листы.
Count – ‘Возвращает число объектов семейства Workbooks (количество открытых приложением книг).
FullName – ‘Возвращает полное имя рабочей книги.
Пример:
MsgBox ActiveWorkbook. FullName
Name – ‘Возвращает имя активной рабочей книги.
Пример:
MsgBox ActiveWorkbook. Name
HasPassword – ‘Допустимые возвращаемые значения:
-True, если у документа имеется пароль защиты;
-False, если у документа нет пароля защиты.
Path – ‘Возвращает путь к файлу рабочей книги.
Пример:
MsgBox ActiveWorkbook. Path
Saved – ‘Допустимые возвращаемые значения:
-True, если не производились изменения в документе со времени его последнего сохранения;
-False, если изменения производились.
Item(Index) – ‘Возвращает ссылку на объект по индексу в семействе.
Index – это номер или имя объекта в семействе.
Пример:
WorkBooks. Item(“Книга1”).Activate
или
WorkBooks(“Книга1”).Activate
3.2.2.Методы объекта Workbook и семейства Workbooks
Activate –‘Активизирует рабочую книгу так, что её первый рабочий лист становится активным.
Пример:
WorkBooks(“Книга1”).Activate
или
Workbook. Activate
Add – ‘Создает новый объект для семейства Workbooks.
Синтаксис: Add(Template)
Аргумент Template задаёт шаблон (путь к шаблону), на основе которого создаётся новая рабочая книга.
Допустимые значения:
- xlWBATChart;
- xlWBATExcel4IntlMacroSheet;
- xlWBATWorkSheet.
Если аргумент Template опущен, то создаётся новая рабочая книга с количеством листов, заданных свойством SheetsInNewWorkbook.
Пример:
Workbooks. Add
Workbooks. Add “c:\Мои документы\Платежка. xls”
Protect–‘Защищает рабочую книгу от внесения в неё изменений.
Синтаксис: Protect(Password, Structure, Windows), где:
- Password – строка, используемая в качестве пароля для
защиты книги;
- Structure – ‘Допустимые значения:
-True, если нужно защитить структуру книги, то есть взаимное расположение листов;
-False, если не нужно.
- Windows – ‘Допустимые значения:
-True, если нужно защитить окно книги;
-False, если не нужно.
Пример:
Sub Охрана()
Workbooks(“Книга1”) . Activate
ActiveWorkbook. Protect (Password=”ЖидкийЛёд”)
End Sub
Если параметры Structure и Windows не заданы, то по умолчанию они принимают значение True.
Unprotect – ‘Снятие защиты с рабочей книги.
Синтаксис: Unprotect (Password)
Пример:
Sub Отмена()
Workbooks(“Книга1”) . Activate
ActiveWorkbook. Unprotect Password=”ЖидкийЛёд”
End Sub
Close – ‘Закрытие рабочей книги.
Close SaveChanges, FileName - ‘Закрывает книгу.
SaveChanges –‘Сохраняет изменения в рабочей книге, если ответ True.
– ‘Не сохраняет изменения в рабочей книге, если ответ False.
FileName – ‘Указывает имя файла, в котором происходит сохранение. Пример:
WorkBooks(“Книга1”).Close WorkBooks(“Книга1”).Close True, “Книга2”
NewWindow – ‘Открывает указанную книгу в новом окне.
Пример:
WorkBooks(“Книга1”).NewWindow
Save – ‘Сохраняет изменения в рабочей книге.
Пример:
WorkBooks(“Книга1”).Save
SaveAs FileName – ‘Сохраняет книгу под другим именем (в другом файле).
Пример:
WorkBooks(“Книга1”).SaveAs “kdjf. xls”
Open FileName –‘Открывает рабочую книгу с именем, указанным в параметре FileName.
Пример:
Workbooks. Open “Книга1.xls”


