Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
информатика_4 / Использование Visual Basic for Applications / Использование Visual Basic for Applications.doc
Скачиваний:
104
Добавлен:
23.02.2015
Размер:
731.65 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ‑УПИ

Использование visual basic for applications для разработки приложений в ms office

Методические указания к практическим занятиям

по дисциплине «Информатика» для студентов специальности 090106 ‑ Информационная безопасность телекоммуникационных систем

Екатеринбург

УГТУ‑УПИ

2008

УДК 004.434:65 (075.8)

Составители: Т. М. Лысенко, Р.А. Иманкулов

Научный редактор доц., канд. техн. наук М.П. Трухин

ИСПОЛЬЗОВАНИЕ VISUAL BASIC FOR APPLICATIONS ПРИ РАЗРАБОТКЕ ПРИЛОЖЕНИЙ В MS OFFICE: методические указания к практическим занятиям /сост. Т. М. Лысенко, Р.А. Иманкулов. Екатеринбург: УГТУ‑УПИ, 2008. 55 с.

Приводится описание основных принципов и особенностей объектно-ориентированного программирования в Visual Basic for Applications (VBA), рассматривается структура программы и иерархия классов, описывается интегрированная среда разработки и язык VBA. Рассматриваются вопросы разработки графического интерфейса и особенности создания приложений для MS Word и MS Excel. Приводятся задания для самостоятельной работы.

Библиогр.: 4 назв. Рис. 1 Табл.14

Подготовлено кафедрой теоретических основ радиотехники.

© УГТУ‑УПИ, 2008

СОДЕРЖАНИЕ

ВВЕДЕНИЕ 4

1. ОБЩИЕ ПРИНЦИПЫ ООП 4

2. ВИЗУАЛЬНОЕ ПРОГРАММИРОВАНИЕ. СОБЫТИЙНО-УПРАВЛЯЕМОЕ ПРОГРАММИРОВАНИЕ 6

3. СТРУКТУРА ПРОГРАММЫ И ИЕРАРХИЯ КЛАССОВ В OFFICE 7

4. ИНТЕГРИРОВАННАЯ СРЕДА РАЗРАБОТКИ VBA 8

5. ЯЗЫК VBA, НАПИСАНИЕ ПРОГРАММНОГО КОДА 15

6. СОЗДАНИЕ ГРАФИЧЕСКОГО ИНТЕРФЕЙСА С ПОМОЩЬЮ СТАНДАРТНЫХ ЭЛЕМЕНТОВ ДИАЛОГА 35

7. СОЗДАНИЕ ПРИЛОЖЕНИЙ ДЛЯ MS EXCEL 43

8. СОЗДАНИЕ ПРИЛОЖЕНИЙ ДЛЯ MS WORD 47

9. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ 51

БИБЛИОГРАФИЧЕСКИЙ СПИСОК 54

Введение

При работе с приложениями MSOfficeдостаточно часто возникает необходимость автоматизировать выполнение той или иной последовательности действий, дополнить интерфейс приложения новыми окнами диалога, панелями инструментов и, таким образом, расширить возможности работы с документами. Для этого разработчикиMSOfficeпредоставили в наше распоряжение инструмент, который обладает богатыми возможностями и достаточно прост в освоении. Этим инструментом является языкVisualBasicforApplications(VBA), о котором и пойдет речь.

Visual Basic for Applications является вариантом Visual Basic, встроенным в офисные приложения. Основное различие между этими двумя языками состоит в том, что Visual Basic является языком компилирующим, создающим исполняемые файлы, в то время как VBA не позволяет создавать автономные продукты. Продукты, созданные в VBA конкретного приложения, могут быть запущены только из этого приложения и функционировать только вместе с ним. VBA, в отличие от Visual Basic, использует интерпретатор, который непосредственно исполняет программу, хранящуюся в текстовом виде или в неких промежуточных р-кодах.

1. Общие принципы ооп

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

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

Итак, что же такое объект? Под этим словом в ООП понимается некий новый тип данных, состоящий из уже определенных типов данных, а также из функций, управляющих этими данными. При этом следует подчеркнуть, что данные в объекте объединены каким-то общим принципом, и все они характеризуют объект, которому принадлежат.

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

Механизм связывания вместе кода и данных, т. е. фактически создания класса, называется инкапсуляцией. Возникает вопрос, в чем же преимущество такой структуризации перед обычным способом программирования? Преимущества никакого бы не было, если бы инкапсуляция одновременно не защищала объект от некорректного использования. Делает она это путем разделения класса на интерфейс и реализацию. Интерфейс содержит только объявление свойств и методов. Определения же их, т. е. реализация на языке программирования, отделены от интерфейса и описаны в области реализации. Другим объектам доступен только интерфейс объекта, реализация же их не касается, поэтому при изменении реализации с условием сохранения интерфейса эти сторонние объекты «не заметят» изменений.

Рассмотрим один общий пример объекта – «мои часы». Пусть этот объект принадлежит к определенному классу – «Электронные часы Casio». Как и все другие объекты данного класса, он имеет такие свойства, как цвет, количество кнопок, текущее время, текущее местонахождение, а также методы – включить подсветку, изменить текущее время и так далее.

Говоря об ООП, нельзя обойти стороной вопрос о наследовании. При наследовании один класс (класс-потомок) создается на основе другого, называемого родительским классом. Самое главное, что класс-потомок по умолчанию приобретает все свойства и методы класса-родителя, при этом существует также возможность их изменения или пополнения новыми. Рассматривая тот же пример с часами, представим, что фирма Casio решила выпустить новую улучшенную модель моих часов, которые теперь имеют будильник. Используя термины объектно-ориентированного подхода, можно сказать, что улучшенная модель является потомком базовой.

Полиморфизм – еще одно ключевое понятие ООП. Механизм полиморфизма не поддерживается VBA, поэтому лишь отметим, что он тесно связан как с понятием наследования, так и интерфейса. Выражается же он в том, что объект-наследник может любым способом изменять реализацию методов, заложенных в базовом классе, при этом (как и в случае с инкапсуляцией) данные изменения никак не скажутся на работе внешних объектов и функций, работающих с этим методом.