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

Коллекции объектов

Ссылка на объект коллекции – это название коллекции, после которого в скобках указывается индекс объекта или его имя в кавычках. Например, ссылка Workbooks(1) выбирает первую из открытых рабочих книг, а Workbooks("budget") ссылается на рабочую книгу с именем "budget".

Важно

  • Количество элементов коллекции заранее не фиксируется.

  • Новый элемент может быть добавлен в произвольное место коллекции.

  • Элементы коллекции перенумеровываются при удалении или добавлении элементов в коллекцию.

  • Различные коллекции объектов имеют общие методы и свойства, но параметры вызова методов могут различаться.

Объекты Workbooks и Workbook

Документ MS Excel (рабочая книга) это объект Workbook. Можно одновременно работать с несколькими рабочими книгами. Открытые рабочие книги составляют коллекцию рабочих книг – Workbooks.

Свойство Workbooks объекта Application возвращает объект Workbooks.

При открытии или создании рабочей книги элемент Workbook автоматически добавляется в конец коллекции Workbooks, а при закрытии книги – соответствующий элемент также автоматически удаляется из коллекции.

Некоторые свойства и методы объектов Workbooks и Workbook

Свойства и методы

Примеры операторов и комментарии

Объект Workbooks

Свойство Count (R/O Long)

MsgBox "Число открытых рабочих книг " & Workbooks.Count высвечивает число рабочих книг в коллекции

Метод Add

Workbooks.Add добавляет новую рабочую книгу в коллекцию

Метод Close

Workbooks.Close используется без аргументов и закрывает все рабочие книги

Объект Workbook

Свойство Colors

Свойство, заданное с индексом, указывает на конкретный элемент палитры ActiveWorkbook.Colors(5) = RGB(255,0,0) заменяет пятый цвет палитры на красный

Свойство без индекса возвращает палитру цветов в виде массива из 56 цветов

ActiveWorkbook.Colors = Workbooks("AIR.XLS").Colors заменяет палитру активной книги на палитру цветов книги AIR.XLS.

Свойство Name (R/O String)

MsgBox Workbooks(Workbooks.Count).Name высвечивает имя последней открытой книги

Свойство FullName (R/O String)

MsgBox ActiveWorkbook.FullName возвращает полное имя активной рабочей книги, включая путь к ней

Свойство Sheets

ThisWorkbook. Sheets.Count возвращает количество элементов в коллекции листов различных типов рабочей книги, содержащей выполняемый код

Свойство Charts

ActiveWorkbook. Charts(1).Name возвращает имя первого листа в коллекции диаграммных листов активной книги

Свойство Worksheets

Workbooks(1).Worksheets(1).Activate активизирует первый лист из коллекции рабочих листов

Метод Open

Workbooks.Open "AIR.xls" открывает существующую рабочую книгу AIR.xls

Метод Close

ActiveWorkbook.Close SaveChanges:=True, Filename="AIR" закрывает рабочую книгу. Книга удаляется из коллекции и элементы коллекции Workbooks перенумеровываются.

Параметр SaveChanges сохраняет или отменяет сделанные изменения. Параметр Filename задает название новой рабочей книги

Метод Activate

Workbooks("AIR.XLS").Activate активизирует указанную рабочую книгу

Метод SaveAs

ActiveWorkbook.SaveAs FileName:="d:\bel_acc\first_book" сохраняет рабочую книгу под именем Filename Если в Filename папка не указана, то файл сохраняется в текущей папке

Примеры

  1. Процедура открывает рабочую книгу, в ячейках рабочего листа сохраняет название книги, путь к ней и имя первого листа рабочей книги.

    Sub op_book()

    Dim p As String

    p = InputBox("Введите имя книги")

    Workbooks.Open (p) 'Открывает рабочую книгу

    Range("B1") = ActiveWorkbook.Name 'имя книги

    Range("B2").Value = ActiveWorkbook.Path 'путь

    Range("B3").Value = ActiveWorkbook.Worksheets(1).Name 'название первого листа

    End Sub

    В диалоге вводится название книги (можно без расширения). Информация о книге и первом рабочем листе сохраняется в ячейках столбца B активного рабочего листа.

  2. Процедура создает и сохраняет новую рабочую книгу с 12 листами.

Sub month_tickets()

Dim n As Long

n = Application.SheetsInNewWorkbook ‘запомнить количество страниц в новой книге

Application.SheetsInNewWorkbook = 12

Workbooks.Add ‘создать новую рабочую книгу из 12 листов

ActiveWorkbook.SaveAs Filename:="months_tickets "

Application.SheetsInNewWorkbook = n

End Sub

Прежнее количество листов во вновь создаваемой рабочей книге восстанавливается перед окончанием процедуры. Новая рабочая книга сохраняется под именем months_tickets.

Созданная рабочая книга появляется в окне проекта. Нажатие на ее название открывает папку с объектами Microsoft Excel Objects, в которой видны 12 листов.