Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Создание пользовательских п ÒÉÌÏÖÅÎÉÊ ÓÒÅÄÓÔÁÍ...doc
Скачиваний:
6
Добавлен:
18.11.2019
Размер:
2.02 Mб
Скачать

Свойства Next и Previous

Свойство Next возвращает следующий, а свойство Previous – предыдущий диаграммный или рабочий лист по отношению к указанному листу.

Пример

Public Sub worksheet_next()

Worksheets("Лист2").Activate

ActiveSheet.Next.Name = "NextSheet"

ActiveSheet.Previous.Name = "PreviousSheet"

End Sub

В процедуре переименовываются следующий и предыдущий листы по отношению к активному листу Лист2.

Если в рабочей книге таких листов нет, то возникнет ошибка.

Свойство Parent

Свойство Parent возвращает исходный объект – объект, являющийся старшим в иерархии по отношению к заданному объекту. Следующий оператор распечатает название рабочей книги, в которой находится рабочий лист с именем PreviousSheet.

MsgBox "Рабочий лист PreviousSheet находится в рабочей книге" & Worksheets("PreviousSheet").Parent.Name

Свойство Visible (r/w Boolean)

Оператор Worksheets("Лист1").Visible = False скрывает рабочий лист Лист1. Свойство может быть установлено в значение xlVeryHidden, что предотвратит возможность для пользователя самостоятельно (вне программы, используя команду Формат-Лист-Отобразить) активизировать лист.

Пример

Процедура использует разные значения свойства Visible.

Public Sub Sheet_Visible ()

Dim sh As Object, newSheet As Object

For Each sh In Sheets

sh.Visible = True 'все листы видимые

Next sh

Set newSheet = Worksheets.Add

newSheet.Visible = False 'лист скрыт и может быть отображен пользователем

Set newSheet = Worksheets.Add

newSheet.Visible = xlVeryHidden 'лист скрыт и может быть отображен пользователем только после установки свойства Visible в True

End Sub

Методы Метод Add

Добавляет новый лист в коллекцию Sheets, WorkSheets. При создании рабочей книги коллекция WorkSheets содержит столько рабочих листов, сколько определено свойством SheetsInNewWorkbook объекта Application.

Внимание

  • Метод Add для объектов Workbooks и Sheets имеет различный синтаксис.

Cинтаксис метода для коллекций Sheets, WorkSheets

expression.Add([Before] [,After] [,Count] [,Type])

  • expression – выражение, возвращающее коллекцию WorkSheets или Sheets. Указание обязательно;

  • Before1 – специфицирует лист, перед которым вставляется новый лист;

  • After1 – специфицирует лист, после которого вставляется новый лист;

  • Count – количество вставляемых листов;

  • Type – тип вставляемого листа. Используются константы: xlWorksheet (по умолчанию), xlChart (только для объекта Sheets), xlExcel4MacroSheet, xlExcel4IntlMacroSheet.

Важно

  • При отсутствии всех параметров один рабочий лист добавляется перед активным листом.

  • При задании параметров Before и After указывается ссылка на лист как индекс или имя в коллекции листов, например, Sheets(1) или Sheets("Лист1")

Пример

В процедуре анализируется количество рабочих листов созданной рабочей книги. Если оно не равно 10, то добавляются новые или удаляются лишние листы.

Sub book_sheet()

Dim p As Long

Application.DisplayAlerts = False ‘отключает запросы

Application.SheetsInNewWorkbook = 12

Workbooks.Add ‘создание новой книги из 12 листов

p = Worksheets.Count ‘количество листов в новой книге

If p < 10 Then

Sheets.Add Count:=10 – p ‘добавление недостающих листов после активного листа

Else

For i = 1 To p – 10

ActiveSheet.Delete ‘удаление лишних листов в начале рабочей книги

Next i

End If

ActiveWorkbook.SaveAs "My_book"

ActiveWorkbook.Close

Application.DisplayAlerts = True

End Sub