Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УП_информатика_фтд_юф_эфэ_эфм.doc
Скачиваний:
43
Добавлен:
11.06.2015
Размер:
1.62 Mб
Скачать

If условие Then операторы1 Else операторы2 End If

Здесь условие обязательно и может быть числовым или строковым выражением со значениями True или False (Null трактуется как False). Операторы1 и операторы2 — это последовательности из одного или нескольких разделенных двоеточием операторов. Закрывающий оператор End If необходим.

Семантика

Если условие истинно (True), выполняется последовательность «операторы1», ложно (False) – «операторы2».

Операторы цикла

Циклы используются для организации повторного выполнения блоков кода. Любой цикл состоит из двух частей: условие цикла и тело цикла. У любого цикла есть параметр. Параметр цикла – это переменная, которая изменяется в теле цикла, а также участвует в условии его окончания.

Цикл For Next

Позволяет повторять группу операторов заданное число раз.

Синтаксис оператора Цикла по счетчику

For счетчик_цикла = начало To конец Step шаг

тело цикла

Next счетчик_цикла

Семантика

Здесь счетчик_цикла – это числовая переменная. В начале выполнения цикла она принимает значение, задаваемое числовым выражением «начало».

Числовое выражение «конец» задает заключительное значение счетчика цикла. Оно вычисляется до начала исполнения тела цикла и не меняется, даже если входящие в него переменные изменяют в теле цикла свои значения. Числовое выражение шаг необязательно (по умолчанию он равен 1). Его значение также вычисляется в начале цикла и прибавляется к счетчику цикла всякий раз, когда завершается выполнение тела цикла и вычисление достигает строки Next счетчик_цикла.

Тело цикла — это последовательность операторов, которая будет выполнена заданное число раз. При каком значении переменной счетчик_цикла происходит завершение цикла, зависит от знака параметра шаг. Если шаг положителен, цикл завершится, когда впервые выполнится условие:

счетчик_цикла > конец

Если шаг цикла отрицателен, условие его завершения:

счетчик_цикла < конец

Это условие проверяется перед началом выполнения цикла, а затем - после каждого прибавления шага к счетчику цикла в операторе Next. Если оно выполнено, управление передается оператору, следующему за Next, в противном случае - выполняются операторы из тела цикла.

Далее приводится пример описания массива размерностью, равной 5 и заполнения его в обратном порядке значениями 5, 4, 3, 2, 1. При этом индекс массива изменяется от 5 до 1 с шагом -1, поэтому присваивание значений начинается с 5-го элемента массива.

Обратите внимание, что элементу массива присваивается значение индекса.

Dim A(1 To 5) As Integer

Dim i As Integer

For i = 5 To 1 Step -1

A(i) = i ‘i-му элементу присваивается значение i

Next i

Процедуры и функции

Процедура – это программа, которая имеет собственное имя и представляет собой некоторую последовательность операторов. Обычно программа на VBA состоит из процедур, каждая из которых решает свою задачу. Для вызова процедур используется специальный оператор Call: Call Имя процедуры (аргументы).

Синтаксис процедуры следующий:

Sub Имя (аргументы)

тело процедуры (операторы)

End Sub

Здесь Sub – обязательное ключевое слово, указывающее на начало процедуры-подпрограммы. Имя – это уникальное имя процедуры. Список аргументов (аргументы) – это необязательный параметр, который либо пуст, либо представляет перечень входных данных, передаваемых процедуре. Если в процедуре используется несколько аргументов, то они разделяются запятыми. В конце процедуры обязательно должен присутствовать End Sub.

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

Sub А (b As Integer, c As String)

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

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

Параметры, указанные в скобках при вызове процедуры, называются фактическими.

Наряду с процедурами в языке VBA существуют и функции

Функция – это встроенная формула. Она отличается от процедуры тем, что возвращает единственное результирующее значение, присваиваемое имени функции.

Синтаксис функции следующий:

Function Имя (аргументы)

тело функции (операторы)

Имя=Результат

End Function

Функции используются в выражениях. В языке VBA, как и в любом языке программирования, есть множество встроенных функций, но пользователь может создавать собственные функции.

Переменные и массивы, описанные внутри функции или процедуры с помощью оператора Dim, являются локальными и могут использоваться только в самой функции или процедуре.

В практической части данного раздела курса информатики будут создаваться пользовательские функции, а затем применяться в MS Excel.

Структура программы

Программа на VBA имеет следующую структуру:

  • описательная часть;

  • алгоритмическая часть.

Описательная часть связана с понятиями типы данных, переменные и массивы, константы. Она включает объявление переменных, массивов и констант. Это обязательная часть программы, т.к. этим обеспечивается выделение памяти описанным объектам, и определяются значения, которые можно им присваивать.

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

Более подробное описание языка программирования VBA можно прочитать в учебном пособии «Основы программирования на языке высокого уровня VBA (Visual Basic for Applications)» [2].