Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Инф VBA

.pdf
Скачиваний:
31
Добавлен:
29.03.2016
Размер:
1.88 Mб
Скачать

50

B.линейную

C.счетного цикла

D.цикла с предусловием

4)Имеется задача: «Найти сумму 25 чисел, введенных пользователем». Какую структуру необходимо использовать при решении данной задачи ?

A.ветвления

B.линейную

C.счетного цикла

5)Принцип структурного программирования «разделяй и властвуй» состоит в следующем:

A.решение трудной задачи путем разделения ее на множество мелких,

легко решаемых подзадач

B.рассмотрение всей программной системы как многоуровневой системы

C.открытость программы для быстрых модификаций

6)Набор операторов для выполнения заданного действия, который синтаксически выделен в отдельную программную единицу и не зависит от других частей исходного кода, называется…

A.разделом программы

B.телом цикла

C.подпрограммой

D.рекурсией

7)Процесс пошагового разбиения алгоритма на более мелкие части с целью получения таких элементов, для которых независимым образом можно легко написать четкие команды, – это метод программирования…

A.«снизу-вверх»

B.визуализации

C.рекурсивного

D.«сверху-вниз»

51

E.динамического

8)В структурном программировании отсутствует принцип…

A.модульности

B.абстракции

C.«разделяй и властвуй»

D.наследования

9)Используемые при вызове подпрограммы константы, переменные и выражения называются…

A.вычисляемыми значениями

B.фактическими параметрами

C.передаваемыми значениями

D.замещающими параметрами

10)В структурном программировании переменные, фиктивно присутствующие

вподпрограмме и определяющие тип и место подстановки фактических параметров, называются …

A.вычисляемыми значениями

B.фактическими параметрами

C.передаваемыми значениями

D.замещающими параметрами

E.формальными параметрами

52

ГЛАВА 6 Объектно-ориентированное программирование

Объектно-ориентированное программирование (ООП) – это технология программирования, которая основана на представлении программы в виде совокупности объектов, каждый из которых является реализацией определенного класса, а классы образуют иерархию на принципах наследования.

Объектно-ориентированное программирование использует в качестве основных элементов конструкции классы и объекты, а не алгоритмы.

Объект ООП – это совокупность свойств (переменных состояния),

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

Класс – описание множества объектов, связанных общностью структуры и поведением. Существует явное разделение внешнего и внутреннего описания класса (интерфейса и реализации). Интерфейс отражает внешнее поведение объекта, описывая абстракцию поведения всех объектов данного класса, но скрывает структуру и несущественные детали. Реализация составляет его внутреннее проявление и определяет особенности поведения. Класс объекта можно сравнить со строительным проектом. По одному проекту можно построить множество домов, в котором будут жить люди, но в самом проекте никто не живёт. Точно так же в классе планируются типы данных, которые могут использоваться объектом, и определяются методы, свойства и события объекта. На основе этого плана вы создаёте экземпляр данного класса – тот объект, который будет содержать реальные данные. На основе одного класса можно создать столько различных объектов, сколько необходимо.

Каждый объект имеет свойства и методы.

Свойство объекта - характеристика объекта, его параметр. Все объекты наделены определенными свойствами, которые в совокупности выделяют объект из множества других объектов. Свойства объектов различных классов

53

могут "пересекаться", т.е. Возможны объекты, обладающие одинаковыми свойствами:

Идентификация (распознавание) объекта — это свойство, которое позволяет отличить данный объект от других объектов того же или других классов. Каждому объекту дается уникальное имя (паспорт), которым наделяется объект в программе.

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

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

либо созданных пользователем или заимствованных в стандартных библиотеках,

которые выполняются при наступлении заранее определенных событий.

Событие - изменение состояния объекта. Внешние события генерируются пользователем (например, клавиатурный ввод или нажатие кнопки мыши, выбор пункта меню, запуск макроса); внутренние события генерируются системой.

Объекты взаимодействуют между собой, посылая и получая сообщения.

Сообщение – это запрос на выполнение действия, содержащий набор необходимых параметров. Механизм сообщений реализуется с помощью вызова соответствующих функций или методов классов.

Базовые

принципы

языков

объективно-ориентированного

программирования

инкапсуляция

наследование

полиморфизм

Инкапсуляция – это скрытие информации о внутренней структуре объекта. Доступ к объекту возможен только через его свойства и методы.

Внутренняя структура объекта скрыта от пользователя. Инкапсуляция

54

позволяет изменять реализацию объектов любого класса без опасений, что это вызовет нежелательные побочные эффекты в программной системе.

Наследование – это возможность создания на основе одного класса новых классов с наследованием всех его свойств и методов и добавлением новых. Один объект может выступать объединением вложенных в него по иерархии других объектов и иметь образованные от него подклассы, при этом осуществляется наследование данных и методов обработки объектов исходного класса. Наследование позволяет создавать новые объекты, изменяя или дополняя свойства прежних. Объект-наследник получает все свойства и методы объекта-предка, но может добавить собственные или перекрыть своими методами одноименные унаследованные методы.

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

Контрольные вопросы к главе 6

1.Что в объектно-ориентированном программировании означает понятие

«инкапсуляция»?

A.наследование объектом класса свойств и методов класса-родителя

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

C.объединение в единое целое данных и алгоритмов обработки

D.исполнение всех запросов в требуемой последовательности

2.Что в объектно-ориентированном программировании означает понятие

«полиморфизм»?

A.наследование объектом класса свойств и методов класса-родителя

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

C.объединение в единое целое данных и алгоритмов обработки

55

D.обработка и исполнение всех запросов в требуемой последовательности

3.Что в объектно-ориентированном программировании означает понятие

«наследование»?

A.способность объекта сохранять свойства и методы класса-родителя

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

C.объединение в единое целое данных и алгоритмов обработки

D.обработка и исполнение всех запросов в требуемой последовательности

4.Для объектно-ориентированного программирования верны следующие утверждения: (выберите несколько вариантов)

A.основные элементы программы - это процедуры, реализующие некоторые алгоритмы

B.классы образуют иерархию на принципах наследования

C.поведение разных объектов одного класса очень различается

D.внешнее описание класса (интерфейс) полностью отражает структуру объекта

E.в качестве основных элементов программы используются классы и объекты

5.Как в объектно-ориентированном программировании называется определенный пользователем тип данных, который обладает внутренними данными и методами для работы с ними в форме процедур или функций?

A.родом

B.полем

C.методом

D.свойством

E.классом

56

6.В программе «Университет» определен класс «1 курс». Какие объекты возможны у этого класса?

A.группа ВВ-101, Иванов М.А.

B.информатика, 5 пара

C.баскетбольная команда, призер чемпионата

D.отлично, зачет

7.Как в объектно-ориентированном программировании называют уведомления, получаемые или передаваемые объектом другим объектам или приложениям?

A.метод

B.свойство

C.атрибут

D.событие

8.Объектом в объектно-ориентированном программировании называют…

A.совокупность переменных состояния и связанных с ними методов

B.функция или процедура, выполняющие определенные действия

C.характеристика, назначенная элементу класса

D.изменение состояния системы

57

ГЛАВА 7 Язык программирования Visual Basic for Applications (VBA)

7.1 Введение в VBA

Язык VBA является версией популярного языка разработки приложений

Visual Basic, ориентированной на приложения. VBA имеет отличия от Visual Basic, которые заключаются в следующем:

язык Visual Basic разрабатывался для создания законченных самостоятельных приложений, VBA используется для автоматизации существующих приложений;

Visual Basic имеет собственную среду разработки, VBA использует среду приложения;

для выполнения приложения, созданного в Visual Basic, пользователю не обязательно иметь доступ к Visual Basic, так как разработанные приложения, как правило, исполняемые. Выполнение VBA-

приложений требует доступа к “родительскому” приложению, в

котором они созданы (например, Excel).

Таким образом, VBA – это язык программирования для создания пользовательских решений по автоматизации приложений, использующий процедуры и процессы.

Решение прикладной задачи с помощью VB выполняется с использованием проекта. Проекты содержат модули, а модули включают

процедуры и функции. В Visual Basic программный код оформляется в виде процедур и функций. Разработанные отдельные функции или процедуры можно накапливать в библиотеках и в дальнейшем использовать по мере необходимости.

Создание программы на VBА включает в себя два этапа:

Этап визуального программирования. На этом этапе программа проектируется с помощью инструментов VBА, т.е. производится построение объектов (форм, кнопок и т.п.) и задание свойств этим объектам (цвет, шрифт и

58

др.). На этапе визуального программирования представляется будущий вид создаваемого приложения (программы).

Этап программирования в исходном коде. На этапе программирования вводится текст программы, для этого используется встроенный текстовый редактор. Программа состоит из операторов языка VBA. Исходный текст программы называется исходным кодом или программным кодом.

7.2 Структура проекта VBA

Проект – это та часть программы, которая видима на экране при ее создании. Проект VBA имеет иерархическую структуру и включает Рабочие Книги(WorkBooks), рабочие листы(WorkSheets), листы диаграммы (Charts),

формы, стандартные модули и модули класса.

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

Весь проект представляет собой один файл – рабочую книгу и сохраняется вместе с ней.

Прежде чем начать работать с редактором Visual Basic, нужно его открыть. Во всех приложениях Office это делается одинаково:

В меню Сервис выбрать: Макрос →Редактор Visual Basic.

Нажать кнопку Visual Basic на вкладке Разработчик. Для этого открыть вкладку Файл и нажатье кнопку Параметры Excel. В диалоговом окне Параметры Excel: Основные установить флажок в пункте:

показывать вкладку Разработчик” на ленте.

Быстрый способ: нажать <Alt>+<F11>.

Можно открыть готовый макрос на редактирование в диалоговом окне Макрос.

Можно создать макрос для объекта на листе, вызвав контекстное меню и выбрав команду Назначить макрос.

59

Откроется окно редактора VBA:

Рис.10

Вредакторе Visual Basic предусмотрены 9 окон:

1.Project Explorer— окно проводника проекта. По умолчанию оно открыто и находится в левой части окна редактора Visual Basic. Если же это окно отсутствует, то для того чтобы сделать его видимым,

необходимо выполнить команду меню Вид→окно проекта

(View→Project Explorer) (можно также нажать либо клавишу <Ctrl+R>,

либо инструмент на панели инструментов).

2.UserForm — окно формы. Появляется тогда, когда вы редактируете пользовательскую форму из окна дизайнера формы. Для вставки Экранной Формы в приложение выполните следующие действия:

Вставка→Экранная форма (Insert→UserForm). После вставки формы в проекте появится новый объект, который отобразится в окне