Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на Visual Basic и Visual Basic for Applications.doc
Скачиваний:
175
Добавлен:
01.05.2014
Размер:
579.07 Кб
Скачать

4.2.2. Объекты Worksheet и Worksheets

Семейство Worksheets представляет множество всех объектов Worksheet в рабочей книге. Элементы данного семейства являются подмно­жеством семейства Sheets, которое включает не только рабочие листы, но и листы диаграмм, листы диалоговых окон и т.п.

Наиболее часто используемым свойством Worksheets является Count, хранящее количество объектов Worksheet в семействе Worksheets.

Семейство Worksheets использует метод Add, с помощью которого можно создать рабочий лист так же, как и методом Add семейства Workbooks можно создать рабочую книгу: Worksheets.Add Before, After, Count, Type, где Before не обязателен, указывает на лист, перед которым требуется доба­вить новый; использует либо имя, изображенное на ярлыке рабочего лис­та, либо индекс листа, например Add:=1; After можно вместо 1-го параметра; если оба первых параметра отсутс­твуют, то новый лист вставляется перед активным листом; Count количество вставляемых листов, по умолчанию 1; Type задает тип листа: xlWorksheet, xlExcel4MacroSheet или xlExcel4IntlMacroSheet, по умолчанию xlWorksheet.

Объект Worksheet - это лист рабочей книги. Он входит как в семейство Worksheets, так и в семейство Sheets. Сослаться на Worksheet можно ли­бо указав имя с ярлыка раб.листа, либо индекс листа. Параметр Worksheet_object, используемый при описании синтаксиса методов, явля­ется ссылкой на рабочий лист.

Свойства объекта Worksheet:

1. Name хранит имя с ярлыка рабочего листа:

Sub Name_a_sheet()

Worksheets(1).Name = Application.UserName

End Sub

2. Visible при значении True лист виден на экране (по умолчанию).

Методы объекта Worksheet:

1. Calculate позволяет вручную выполнять вычисления на заданном рабочем листе: ActiveWorksheet.Calculate.

2. Copy копирование рабочего листа: Worksheet_object.Copy Before, After, если опущены оба параметра, то создается новая раб.книга, содер­жащая требуемый лист.

3. Move перемещение листа в указанное место: Worksheet_object.Move Before, After.

4. Delete удаление листа, например Sheet2.Delete.

4.2.3. Объект Range

Объект Range не входит ни в одно семейство. Объектом Range явля­ется ячейка, строка, столбец, несколько расположенных рядом или от­дельно ячеек, или трехмерный диапазон.

Диапазон можно задавать следующими способами:

1. Ссылками на ячейки, например Range("G14") или Range("B1:B6").

2. Именем диапазона, например "ИТОГИ" Range("ИТОГИ").

3. Используя объект ActiveCell.

4. Используя объект Selection.

Параметр Range_object, используемый при описании свойств, являет­ся ссылкой на диапазон. Свойства объекта Range:

1. Addres хранит расположение диапазона на рабочем листе: Range_object.Addres(RowAbsolute, ColumnAbsolute, _ ReferenceStyle, External, RelativeTo),

где RowAbsolute не обязателен, при True возвращается абсолютный адрес строки (по умолчанию); ColumnAbsolute то же для столбца; если объект Range указывает на диапазон, то оба параметра отно­сятся ко всем строкам и столбцам; по умолчанию используется стиль ссылок А1; если надо использовать нотацию RlCl, присвоить необязательному параметру ReferenceStyle зна­чение xlRlCl (для А1 xlA1); по умолчанию ссылки являются локальными, чтобы возвратить внешнюю ссылку, присвоить необязательному параметру External значение True; RelativeTo дополнительный, задает абсолютные координаты точки, от­носительно которой вычисляется положение заданного диапазона; если па­раметры RowAbsolute и ColumnAbsolute имеют значение False, а аргумент ReferenceStyle - значение xlRlC2, то параметр ReferenceStyle указывать обязательно.

2. Cells для ссылки на ячейки, зная их положение относительно за­данного объекта Range: Range_object.Cells(Row, Column), где Row не обязателен, относительный адрес строки; Column дополнительный, относительный адрес столбца.

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

4. Formula задает или читает формулы в стиле А1.

5. Name для присваивания имени диапазону.

6. Value для установки или чтения содержимого указанной ячейки.

7. Count хранит количество объектов семейства.

Методы объекта Range:

1. AutoFit задает автоматическую настройку ширины столбца и высо­ты строки диапазона: Range_object.AutoFit.

2. Clear, ClearComments, ClearContents, ClearFormats, ClearNotes - 1-й метод для очистки диапазона Range_object.Clear; остальные для ликвидации комментариев, содержимого ячеек, форматов и примечаний.

3. Copy - копирование диапазона или другого объекта в буфер обмена; два варианта:

1) копирует объект (в данном случае Range) object.Copy,

2) копирование и вставка Range_object.Copy destination, параметр destination определяет диапазон, в который ведется копи­рование.

4. Cut вырезает объект и помещает его либо в буфер, либо в ука­занный диапазон:

Range_object.Cut destination, если параметр отсутствует, то используется буфер.

5. PasteSpecial для вставки диапазона или другого объекта из бу­фера:

Range_object.PasteSpecial paste, operation, skipBlanks, где paste не обязателен, определяет элементы диапазона: формулы, данные, форматы, комментарии, которые требуется вставить, имеет значения: - xlPasteAll (по умолчанию), xlPasteFormulas, xlPasteValues, xlPasteFormats, xlPasteNotes, xlPasteAllExceptBorders; operation дополнительный, указывает тип вставки, имеет значения: lxlPasteSpecialOperationNone (по умолчанию), lxlPasteSpecialOperationAdd, lxlPasteSpecialOperationSubtract,

lxlPasteSpecialOperationMultiply, lxlPasteSpecialOperationDivide;

skipBlanks при значении True пропускает при вставке пустые ячейки (по умолчанию False).