Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Структура программы. Типы данных.



 

Цель: Познакомиться с общей структурой программы на VBA, понятием процедуры и функции.

 

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

При решении задач с помощью VBA требуется создать проект. Проекты VBA выполняются совместно с другими приложениями. Приложение, в котором разрабатывается и выполняется проект VBA, называется основным. В своей последующей работе в качестве основного приложения мы будем использовать Microsoft Excel.

Чтобы запустить редактор VBA, выберите в главном меню Excel команду Сервис/Макрос/Редактор Visual Basic или нажмите сочетание клавиш Alt+F11. Открывается окно приложения Microsoft Visual Basic.

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

· Окно проекта - это специальное окно редактора VBA, в котором выводятся все элементы проекта VBA. Элементы отображаются в виде иерархической структуры, включающей пользовательские формы, модули кода и объекты основного приложения, например, рабочие листы. Представление элементов в виде дерева упрощает их просмотр и выбор. Для отображения окна проекта Редактор VBA выберите команду Вид/Окно проекта.

 

Рис. 1.1

· Окно модуля используется при написании любой программы VBA, будь это код макроса, запуск которого осуществляется при нажатии кнопки в пользовательской форме, или подпрограмма разрабатываемого проекта, однако оно отображается только тогда, когда с выбранным объектом связан код.

Для отображения окна модуля выполните одно из следующих действий:

· Дважды щелкните в окне проекта по имени требуемого объекта приложения, который может содержать код;

· Дважды щелкните по требуемой форме или любому элементу управления в форме;

· Выберите команду Вставка/Модуль в меню редактора VBA.

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

Программа на VBA - это набор процедур и функций, которые обеспечивают работоспособность системы. Их общая структура будет иметь такой вид:

Sub имя_процедуры ([аргументы])

Инструкции

End Sub

 

Ключевые слова Sub и End Sub используются в описании любой процедуры. Параметр имя_процедуры определяет имя создаваемой процедуры. Необязательные параметры аргументы позволяют передать в процедуру требуемые значения.

Синтаксис описания функций очень похож на синтаксис описания процедур, однако имеются некоторые отличия:

 

Function имя ([аргументы]) [As Тип]

Инструкции

имя = выражение

End Function

 

Внутри функции обычно имеется инструкция имя = выражение которая используется для задания возвращаемого значения. Обратите внимание, что имя функции стоит слева от знака равенства, параметр выражение определяет значение, которое должно быть совместимым с объявленным в параметре [As Тип] типом данных для функции.

Чтобы добавить процедуру или функцию в проект, выполните следующую последовательность действий:

1. Откройте окно модуля, в которое требуется добавить процедуру.

2. Выберите команду Вставка/Процедура. Выводится диалоговое окно Вставка процедуры, рис. 1.2.

3. Введите имя процедуры в поле Имя.

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

Рис. 1.2

5. Нажмите кнопку ОК. В окне модуля выводится пустая процедура с заданным именем.

Для запуска пользовательской процедуры (формы) установите курсор в любом месте процедуры (активизируйте форму), а затем выберите команду Запуск\Запуск подпрограммы/формы или нажмите клавишу F5. Также можно воспользоваться кнопкой Запуск подпрограммы\UserForm на панели инструментов.

VBA позволяет описать и использовать переменные различных типов. Выбор типа основывается на требованиях создаваемого приложения. В таблице приводятся параметры имеющихся в VBA основных типов данных:

 

Тип данных Диапазон
Byte от 0 до 255
Integer от -32768 до 32767
Long от -2147483648 до 2147483647
Currency от -922337203685477, 5808 до 922337203685477, 5807
Boolean True или False
Date с 1 января 100 года до 31 декабря 9999 года
String текстовые строки переменной длины

 

Для описания переменных чаще всего используется инструкция Dim, которая имеет синтаксис:

 

Dim имяПеременной [([ индексы])] [As тип]

 

Параметр имяПеременной - имя описываемой переменной. Необязательные скобки и параметр индексы используются для описания массивов. Дополнительный параметр As тип позволяет назначить переменной требуемый тип данных. Если тип не назначен, то переменной присваивается тип Variant. Переменные этого типа могут содержать данные любого типа, исключая строковые; во многих случаях имеется возможность преобразовать один тип данных в другой и объединить данные различных типов, например:

Dim BYear as Integer

Dim Message as Variant

Dim Age

BYear = InputBox(“Введите год рождления”)

Message = BYear & " год моего рождения"

Age = Year(Now) – Byear

Msgbox Message

Msgbox “Мой возраст ” Age “ лет”

При работе с числовыми переменными, мы можем использовать стандартные арифметические операции: " +" - сложение, " -" - вычитание, " *" - умножение, " /" - деление, " %" - процент от числа, " ^" - возведение в степень. Кроме того существует множество встроенных функций по работе с различными типами данных.

 

Практическое упражнение

Основная наша цель на данном этапе - это познакомиться с редактором VBA и научиться создавать процедуры, расширяющие возможности основного приложения.

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

В этом случае последовательность наших действий будет следующей:

1. Перейдите в редактор VBA и откройте окно проекта, если до этого оно было закрыто.

2. Выделите в окне проекта объект Лист1 и нажмите правую клавишу мыши. В контекстном меню выбираем пункт Программа. На экране активизируется окно модуля.

3. В левом верхнем списке этого окна выбираем объект Worksheet, в правом - событие Activate. Т. е. тем самым мы

определили, что данная программа выполнится в том случае, когда будет сделана попытка перейти на Лист1 рабочей книги. Окно модуля примет вид, как на рис. 1.3.

Рис. 1.3

4. Введем следующую программу:

Private Sub Worksheet_Activate()

Dim password As String

password = InputBox(" Введите пароль для доступа к листу" )

If password < > " nowhow" Then Sheets(" Лист2" ).Select

End Sub

Если теперь в приложении Microsoft Excel активизировать какой-либо рабочий лист, а затем вновь попробовать вернуться на Лист1, перед нами возникнет диалоговое окно, в которое мы должны будем ввести пароль. В случае неправильного ввода, активным становится Лист2.

Контрольные вопросы

1. Запуск редактора VBA, окно проекта, окно модуля.

2. Структура программы на VBA.

3. Синтаксис описания функций.

4. Добавление процедуры или функции в проект.

5. Запуск пользовательской процедуры или формы.

6. Типы переменных.

 


Поделиться:



Последнее изменение этой страницы: 2017-05-05; Просмотров: 480; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.018 с.)
Главная | Случайная страница | Обратная связь