Понятия и определения объектно-ориентированного программирования Основные объекты VBA

Содержание

Слайд 2

Каждый объект принадлежит к некоторому классу Приложения из состава MS Office

Каждый объект принадлежит к некоторому классу

Приложения из состава MS Office

представляют собой совокупность объектов.
Само приложение это объект Application

Каждый объект принадлежит к некоторому классу

Worksheets

Слайд 3

Объектная модель Полная ссылка на объект состоит из ряда имен вложенных

Объектная модель

Полная ссылка на объект состоит из ряда имен вложенных объектов
Workbooks(«Архив.xls").Worksheets(«Отчет").Range(«А2")
Если

данная рабочая книга и лист активны, то полную ссылку можно пропустить
Range(“A2”)
Слайд 4

Каждый объект имеет свойства и методы. Object.Property Object – допустимая объектная

Каждый объект имеет свойства и методы.
Object.Property
Object – допустимая объектная ссылка VBA
Property

- любое допустимое свойство данного объекта
Object.Metod
Metod - имя любого метода, принадлежащий данному объекту
Слайд 5

Свойства Свойства объекта определяют его внешний вид Свойства объектов можно использовать

Свойства

Свойства объекта определяют его внешний вид
Свойства объектов можно использовать двумя способами:
1.

Устанавливать
Worksheets («Лист5»). Name= «Отчет»
2. Получать
M=Range(“Z12”).Value
Свойства содержат численные, строковые, логические ( Boolean) значения или значение типа Object
Слайд 6

Методы Методы определяют поведение объекта или действие, которое производится с объектом

Методы

Методы определяют поведение объекта или действие, которое производится с объектом
Например,

объект рабочего листа Worksheets имеет метод удаления
Workbooks («Книга1»). Worksheets («Лист2»).Delete
и метод добавления
Workbooks («Книга1»). Worksheets .Add
Метод объекта – программный код внедренный в объект и используемый так, как используют встроенные процедуры
Слайд 7

Объект Paragraph (абзац) Класс Paragraphs (последовательность абзацев)

Объект Paragraph (абзац) Класс Paragraphs (последовательность абзацев)

Слайд 8

Класс объектов Range – позволяет работать с произвольной последовательностью элементов Например:

Класс объектов Range – позволяет работать с произвольной последовательностью элементов

Например:
Range(“A1:F12”) Диапазон

ячеек
Range (“D4”) Одна ячейка
Range (“B4:D6; H5:K14; C30:M40”) - Перечень диапазонов.
Существует свойство Range и метод Range
Слайд 9

Объекты S e l e c t I o n Присутствует

Объекты S e l e c t I o n

Присутствует во

всех приложениях MS Office
Задает выделенный объект – выделенную область в документе Word или выделенный диапазон рабочего листа Excel
Особенность: в каждом окне может существовать только один объект Selection.
Существует свойство Selection и метод Select
Слайд 10

Свойство Selection возвращает существующий выделенный объект Selection.Font.Bold=True А метод Select создает новый Range (“D4:F12”).Select

Свойство Selection возвращает существующий выделенный объект
Selection.Font.Bold=True
А метод Select создает новый
Range

(“D4:F12”).Select
Слайд 11

Активные объекты и метод Activate Активный элемент находится в фокусе клавиатуры

Активные объекты и метод Activate

Активный элемент находится в фокусе клавиатуры (активное

окно, активный документ, активный рабочий лист, активная ячейка).
Есть свойства, возвращающие активный объект. Активный элемент может быть единственным в своем классе. Например:
свойство ActiveSheet – возвращает активный лист
ActiveDialog - возвращает активное диалоговое окно
ActiveCell возвращает активную ячейку , ей присваивается значение 500.
ActiveCell.Value=500
Метод Activate делает активным элемент, его вызвавший.
Range(“D6”).Activate
Слайд 12

Оператор цикла For Each Оператор For Each повторяет выполнение группы инструкций

Оператор цикла For Each

Оператор For Each повторяет выполнение группы инструкций

для каждого элемента массива или семейства.
For Each Элемент In Группа
[блок операторов]
[Exit For]
[блок операторов]
Next [Элемент]
Слайд 13

Пример оператора цикла For Each Dim A as variant A=Array(23,52,67,41,39,86,77,14) S=0

Пример оператора цикла For Each

Dim A as variant
A=Array(23,52,67,41,39,86,77,14)
S=0
For Each B In

A
S=S+B
Next B
‘ Нахождение суммы элементов вектора А
Слайд 14

Range объекты в Excel Range объект в Excel это диапазон, состоящий

Range объекты в Excel

Range объект в Excel это диапазон, состоящий из

строк, столбцов, или даже одной ячейки
Range(“A2”).Activate
Range(“d2:h15”).Select
Слайд 15

Cells – свойство объекта Worksheet Cells - возвращает все ячейки рабочего

Cells – свойство объекта Worksheet

Cells - возвращает все ячейки рабочего листа;


Cells(i,j) возвращает одну ячейку, на пересечении i-ой строки и j-го столбца, например Cells(3,2) равноправно определению Range(“B3”)
(Метод Cells(i,j) удобен для применения в циклических операторах, т.к. номер строки и столбца можно использовать как счетчики цикла)
Слайд 16

Row - свойство объекта Worksheet возвращает строку, например: Rows(2) Columns -

Row - свойство объекта Worksheet возвращает строку, например: Rows(2) Columns -

свойство объекта Worksheet возвращает столбец, например: Columns(3)
Sub Таблица_умножения()
For rws=1 To 10
For cols=1 To 10
Cells(rws, cols).Value=rws*cols
Next cols
Next rws
End Sub
Слайд 17

Свойства и методы Range объектов в Excel

Свойства и методы Range объектов в Excel

Слайд 18

Value x=Range(“f4”).value Возвращает или устанавливает значение Range(“g4”).value=55 Name - присваивает имя

Value x=Range(“f4”).value
Возвращает или устанавливает значение Range(“g4”).value=55
Name - присваивает имя диапазону Range(“d24:k24”).name=“ИТОГИ”
CurrentRegion – возвращает текущий

диапазон, т.е. ограниченный пустыми строками и столбцами
X= Range(“H6”).CurrentRegion.Rows.Count

СВОЙСТВА :

Слайд 19

Columns, Rows – возвращают семейство строк и столбцов из которых состоит

Columns, Rows – возвращают семейство строк и столбцов из которых состоит

диапазон
Formula – формула в формате А1
Range(“G3”).Formula=“=$d$3+$F$6”
FormulaArray - формула диапазона (матрицы)
Range(“ G3:G6 ”). FormulaArray = “=A1:A3 * 3”
Address – возвращает адрес ячейки
MsgBox ActiveCell.Address()
Слайд 20

Font - возвращает объект представляющий собой шрифт. Объект Font имеет свои

Font - возвращает объект представляющий собой шрифт. Объект Font имеет

свои свойства:
Name – имя шрифта, например “Arial Cyr”;
FontStyle – стиль. Допустимы: Bold, Italic, Bold Italic;
Size – размер шрифта;
Superscript – логическое свойство, определяющее, используется ли текст как верхний индекс
Color – цвет
Underline – устанавливает тип подчеркивания. Допустимы значения:
xlNone (нет подчеркивания)
xlSingle (одинарное, по значению)
xlDouble (двойное, по значению)
И т.д.
Слайд 21

МЕТОДЫ: AutoFit – автоподбор ширины столбца Clear – очищает диапазон Offset(n,

МЕТОДЫ:

AutoFit – автоподбор ширины столбца
Clear – очищает диапазон
Offset(n, m) – возвращает

диапазон, смещенный относительно текущего на n-строк и m-столбцов.
Copy – копирует в буфер
Insert – вставляет из буфера
Delete – удаляет
Select – выделяет
AutoFill-
Слайд 22

инструкция With…End With With объект [Инструкции] End With Эта инструкция не

инструкция With…End With

With объект
[Инструкции]
End With
Эта инструкция не является

управляющей. With…End With позволяет непосредственно работать со свойствами и методами объекта, не повторяя его имя в каждой инструкции.
Слайд 23

Sub Пример Range(“B2:F8”).Select Selection.Name= «Диапазон» Selection.Value=101 Selection.Font.Bold=True Selection.Font.Italic=True Selection.Font.Underline=xlDouble End Sub

Sub Пример
Range(“B2:F8”).Select
Selection.Name= «Диапазон»
Selection.Value=101
Selection.Font.Bold=True
Selection.Font.Italic=True
Selection.Font.Underline=xlDouble
End Sub
Range(“B2:F8”).Select
With Section
.Name=«Диапазон»
.Value=101
With .Font

.Bold=True
.Italic=True .Underline=xlDouble
End With
End With
Слайд 24

Самостоятельно измените пример, используя инструкцию With…End With Sub Стороны_света() Range(“D6”).Activate ActiveCell.Value=

Самостоятельно измените пример, используя инструкцию With…End With

Sub Стороны_света()
Range(“D6”).Activate
ActiveCell.Value= «центр»
ActiveCell.Offset(1,0)= «Юг»
ActiveCell.Offset(0,1)=

«Восток»
ActiveCell.Offset(0,-1)= «Запад»
ActiveCell.Offset(-1,-1)= «Северо-восток»
ActiveCell.Offset(-1,0)= «Север»
End Sub