
- •14.1. Коллекция Workbooks - работа с книгами
- •14.2. Методы Коллекции Workbooks
- •14.2.1. Add, Close, Open - стандартная работа с книгами
- •14.6.2. Свойства CodeName, FullName, Name
- •14.7. События объекта Workbook
- •14.8. Коллекция Worksheets
- •14.9. Методы коллекции Worksheets
- •14.9.2. Copy - копируем листы
- •14.9.3. Delete, Move - удаляем и перемещаем листы
- •14.12.2. Paste, PasteSpecial, о работе с Selection
- •14.12.3. Protect и Unprotect - защита и снятие защиты
- •14.13. Свойства объекта Worksheet
- •14.13.1. Cells - ячейки листа
- •14.13.6. UsedRange - заполненные ячейки
- •14.13.7. Visible - скрытие и отображение листов
- •14.14. События объекта Worksheet
14.12.3. Protect и Unprotect - защита и снятие защиты
Метод Protect защищает лист от изменений. Его можно вызывать без параметров, однако, при необходимости вы можете очень тонко настроить защиту листа. Например, задать пароль, разрешить пользователю некоторые операции и т.д.
Метод Unprotect снимает защиту с листа.
Установка защиты, особенно - защиты с паролем - может быть полезной, если вы хотите, чтобы пользователь гарантированно не мог внести изменения в какой-либо из листов вашей книги.
14.13. Свойства объекта Worksheet
14.13.1. Cells - ячейки листа
Это свойство возвращает объект типа Range, который представляет собой все ячейки листа. С помощью Cells можно обращаться к каждой конкретной ячейке по отдельности. Например, чтобы записать число 8 в ячейку, находящуюся на пересечении первой строки и пятого столбца текущего листа, надо выполнить такую команду (листинг 14.12.)
ActiveSheet.Cells(1, 5) = 8
Листинг 14.12. Вставка данных в ячейку, используя стиль R1C1 (html, txt)
Выше мы пользовались свойством Cell для того, чтобы работать с данными на листе. Помимо записи данных в ячейки, данные можно считывать, ячейки можно форматировать и т.д. Об этом - ниже.
14.13.2. EnableCalculation - управление автоматическим пересчетом ячеек
Позволяет включать и отключать автоматический пересчет ячеек. В проектах большого размера пересчет ячеек может занимать много системных ресурсов.
Это свойство можно установить в False если вы, например, осуществляете вывод большого объема данных на лист и хотите ускорить этот процесс.
14.13.3. Next и Previous - перемещение по листам книги
Эти свойства позволяют получать ссылки на следующий, и, соответственно, предыдущий лист книги.
14.13.4. QueryTables - таблицы запросов
Возвращает коллекцию QueryTables, содержащую объекты QueryTable - таблицы запросов, которые используются для вставки в документ информации из баз данных.
14.13.5. Range - работа с ячейками и диапазонами ячеек
Это свойство возвращает объект Range, соответствующей ячейке или диапазону ячеек, указанных при его вызове. Собственно говоря, Range наряду с Cells - это основные инструменты для работы с ячейками листа. Например, так (листинг 14.13.) можно вставить число 4 в ячейку E1:
ActiveSheet.Range("E1") = 4
Листинг 14.13. Добавляем данные в ячейку (html, txt)
А такая конструкция (листинг 14.14.) позволяет прибавить по 1 к значению каждой из ячеек диапазона A1:K100
Dim MyCell As Variant
For Each MyCell In ActiveSheet.Range("A1:K100")
MyCell.Value = MyCell.Value + 1
Next
Листинг 14.14. Работа с диапазоном ячеек (html, txt)
При использовании конструкции For-Each обход ячеек осуществляется по строкам.
Ниже мы рассмотрим объект Range подробнее.
14.13.6. UsedRange - заполненные ячейки
Это свойство возвращает объект Range, содержащий все заполненные ячейки на листе. Это может быть полезным, например, если вы хотите скопировать эти ячейки на другой лист и в других подобных ситуациях.
14.13.7. Visible - скрытие и отображение листов
Позволяет скрывать и отображать листы. По умолчанию листы отображаются - их свойство Visible установлено в True, установив его в False, вы скрываете лист.