Объект 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”