Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методика по Информатике / VBA / Усольцева Л.А.- Программир.на VBA.doc
Скачиваний:
110
Добавлен:
10.04.2015
Размер:
1.71 Mб
Скачать

Процедуры Sub

Процедура Sub имеет следующий синтаксис:

[Public] [Private] Sub имяПроцедуры (аргументы)

операторы

End Sub

Процедуры Sub подразделяются на общие процедуры и процедуры событий.

Рассмотрим подробно составляющие ключевые слова процедуры.

Ключевые слова [Public] [Private] определяют область действия (видимости) процедуры.

Область действия процедуры

Глобальная[Public]

Во всех процедурах приложения

Локальная внутри модуля[Private]

Только внутри модуля, в котором объявлена

Локальная внутри процедуры[Private]

Только внутри процедуры, в которой объявлена

[Public] – любая переменная из раздела объявлений является глобальной, т.е. доступной в любой процедуре модуля, если внутри процедуры нет переменной с таким же именем. В этом случае любой компонент проекта доступен в пределах всего проекта.

[Private] – ограничивает область видимости компонента пределами данного модуля.

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

В случае создания общей процедуры (рис. 8, а) имяПроцедуры это любое правильно записанное имя, например, Summa. Вызов общей процедуры осуществляется с помощью оператора Call: Call Summa (аргумент1, аргумент2, ...аргументN). Второй способ позволяет вызвать процедуру sub по ее имени. Например, NameProc аргумент1, аргумент2, ...аргументN.

Если процедура создается через созданную форму (рис.8, б), то эта процедура является процедурой событий. В этом случае ИмяПроцедуры, например, CommandButton1_Click, представляет собой имяЭлементаУправления_имяСобытия, т.е. указывает на используемый элемент управления формы и на событие, которое запускает эту процедуру (в данном случае – нажатие кнопки).

Параметр аргументы применяется для объявления передаваемых в процедуру переменных.

Private Sub Summa (a, b)

Summa = a + b

End Sub

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

К основным символам языка относятся:

  • прописные и строчные буквы латинского алфавита от А до Z, буквы русского алфавита от А до Я;

  • арабские цифры от 0 до 9;

  • специальные символы:

% процент, ( ) круглые скобки, ! восклицательный знак, ? вопросительный знак, , запятая, ; точка с запятой, . точка, : двоеточие, апостроф, « кавычки, - тире, __ пробел, [ ] квадратные скобки, $ знак денежной единицы, ¤ знак символьной переменной.

2.1.1. Данные

Данные – элементарные конструкции языка. Они делятся на следующие группы:

  1. константы;

  2. переменные;

  3. массивы;

  4. указатели функций.

  • Константы делятся:

Константы

Числовые Символьные

Целый тип Вещественный тип

Основная константа Константа с порядком

Числовые константы – это любые десятичные числа в интервале от – 3,4 * 10 38 до 3,4 * 1038.

Различают числовые константы следующих типов:

  1. целый;

  2. вещественный.

Константы целого типа – это последовательность десятичных цифр, перед которой может стоять знак « + » или « - » , причем знак «+ » можно опускать.

Пример: 123 123

- 36 - 36

0 0

Константы вещественного типа – допускают две формы записи:

а) основная вещественная константа – десятичное число со знаком или без знака, в котором дробная часть от целого отделяется «плавающей точкой».

б) вещественная константа с порядком состоит из мантиссы, основания системы счисления и порядка.

Основание десятичной системы счисления записывается буквой Е (экспоненциальная форма числа).

Пример: - 3,1 * 10 2 - 3,1 Е + Ø2

5,98 * 10-3 5,98 Е – Ø3

Символьные константы – это последовательность любых символов языка, заключенных в кавычки. В VBA такие константы называются строками.

ПРИМЕР: «Москва», «3,45».

  • Переменные.

Переменные – это величины, значения которых могут меняться в процессе выполнения программы.

Переменные характеризуются:

  • именем,

  • типом.

Имена переменных выбираются по следующим правилам:

  • имена должны начинаться с буквы, но не с цифры;

  • в имени допускается знак подчеркивания, все остальные знаки запрещены;

  • не допускается, чтобы имена имели пробелы;

  • длина имени не должна превышать 255 символов;

  • имя не должно совпадать ни с каким ключевым словом, функцией или оператором VBA;

  • все процедуры и модули должны иметь разные имена.

Примеры допустимых и недопустимых имен переменных приведены в табл. 1.

Таблица 1. Примеры имен переменных

Допустимые имена

Недопустимые имена

A

Имя более 255 символов

Go4Ln

1p

SUMMA

P 1

P1

W?

S_1

Sub

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

ТИП переменной соответствует типу данных, которые она представляет. Основные типы данных в VBA рассмотрены в табл. 2.

Таблица 2. Типы данных VBA

Тип данных

Содержимое переменной

Диапазон допустимых значений

Boolean

Логический тип данных

Истина (-1) или Ложь (0)

Byte

Достаточно малое целое число

От 0 до 255

Integer

Не слишком большое целое число

От –32768 до 32767

Long

Большое целое число

От –2147483648 до 2147483647

Single

Значение одинарной точности с плавающей запятой

От –3,402823Е38 до –1,401298Е-45 для отрицательных значений и

от 1,401298Е-45 до 3,402823Е38 для положительных значений

Double

Значение двойной точности с плавающей запятой

От –1,79769313486231Е308 до 1,79769313486232Е308

Currency

Большое число, для которого выделено 19 позиций, включая 4 позиции после запятой

От –922337203685477,5808 до 922337203685477,5807

Object

Объект VBA

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

String (переменной длины)

Последовательность переменной длины, состоящая из длины строки + 10 байт

Используется для хранения текста и может содержать от 0 до 2000000000 символов

String (фиксированной длины)

Последовательность заданной длины, состоящая из длины строки

Используется для хранения текста от 0 до 65400 символов

Variant

Любое из допустимых значе-ний

Зависит от типа данных, содержащихся в переменной, в соответ-ствии с вышеприведенными описа-ниями

Пользова-тельский Type

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

  • Массивы.

Массив – это совокупность данных одного и того же типа, причем эти данные называются элементами массива или переменными с индексами.

Массивы характеризуются:

  • именем,

  • типом,

  • размерностью.

Имя и тип определяются аналогично имени и типу переменных.

Размерность массива определяется количеством индексов, определяющих номер элемента в массиве. Индексы записываются в скобках после имени массива и отделяются друг от друга запятыми.

Пример: Х2 Х(2)

УК У(К)

В1,2 В(1,2)

  • Указатели функций.

Указатель – функции является средством обращения к вычислению функции и имеет вид:

F (Х1, Х2,…Хn),

где F – имя функции;

Х1, Х2,…Хn – аргументы функции.

В VBA, как и в других приложениях Microsoft Office, есть встроенные математические функции. Эти функции можно использовать в арифметических выражениях для вычисления, например, целой части числа, модуля числа, синуса числа и др. Основные математические функции, используемые в VBA, приведены в табл. 3.

Таблица 3. Математические функции VBA

Функция

Значение

Abs(число)

Абсолютное значение числа (модуль)

Atn(число)

Арктангенс числа

Cos(число)

Косинус числа

Exp(число)

Число e в степени, равной заданному числу (eх)

Fix(число)

Целая часть числа

Окончание таблицы

Int(число)

Целая часть числа. Функции Int и Fix по-разному действуют только на отрицательные числа: Int – возвращает ближайшее меньшее целое, а Fix – просто отбрасывает дробную часть числа

Log(число)

Натуральный логарифм числа, значение двойной точности

Rnd(число)

Генерация случайного числа, значение одинарной точности, аргумент является необязательным.

Sgn(число)

1, если число положительное, 0, если число равно нулю, и –1, если число отрицательное

Sin(число)

Синус числа

Sqr(число)

Квадратный корень из числа

Tan(число)

Тангенс числа

pi

х* pi/180

Перевод числа х, заданного в градусах, в радианы

Log (число) /Log(10)

Десятичный логарифм

Арксинус числа х

Арккосинус числа х