Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Новая папка_5 / Лабораторная работа №5.docx
Скачиваний:
35
Добавлен:
06.03.2016
Размер:
435.82 Кб
Скачать
    1. Переменные: Dim и Static

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

Пример 2.

Объявление переменной с именем num_MyAge типа Byte:

Dim num_MyAge As Byte

num_MyAge = 23

Этот код можно перевести так: "Объявить переменную типа Byte с именем num_MyAge и сделать ее доступной в модуле, в котором она объявлена". Второй строкой мы присваиваем переменной число 23.

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

Обратите внимание на то, что если вы присваиваете значение строковой переменной — передаваемое ей значение должно быть заключено в кавычки. При присваивании значений даты соответствующим переменным, эти значения должны быть заключены в значки #. Пример работы с переменными типа String и Date.

Dim str_MyName as String

Dim date_MyBirthDate as Date

str_MyName = "Alexander"

date_MyBirthDate = #January 1, 2007#

Помимо ключевого слова Dim могут использоваться и другие слова. В частности, нам будет полезна команда Static —переменная, объявленная с использованием этой команды, будет хранить свое значение между вызовами процедуры, область ее видимости аналогична переменной, объявленной с Dim. Такую переменную можно использовать для накопления каких-либо значений.

Пример 3.

Создайте новый документ Microsoft Word, добавьте в него две кнопки.

Для первой кнопки с именем cmd_Dim, напишите следующий код (Обработчик события Click кнопки cmd_Dim).

Dim num_Counter As Integer

num_Counter = num_Counter + 1

MsgBox (num_Counter)

Здесь мы сначала объявляем переменную типа Integer, потом присваиваем этой переменной ее же значение, увеличенное на 1, а дальше — выводим переменную в окне сообщения. Сколько бы вы не нажимали на эту кнопку — всякий раз в окне сообщения будет выводиться единица. Ведь каждый раз, когда запускается обработчик, все происходит как бы в первый раз — информация об изменениях переменной не сохраняется при выходе из обработчика.

Вторую кнопку назовите cmd_Static, подпишите ее как Static, в обработчик нажатия добавьте следующее:

Static num_Counter As Integer

num_Counter = num_Counter + 1

MsgBox (num_Counter)

Единственное отличие этого текста от предыдущего — ключевое слово Static вместо Dim. Но благодаря такому объявлению,переменная хранит свое значение между запусками обработчика. Попробуйте несколько раз нажимать на кнопку Static — каждый раз вы будете видеть в окне сообщения число, увеличенное на 1.

    1. Арифметические операторы и работа с числовыми переменными

Операторы — это команды, которые используются в VBA для работы с данными. В табл. 2 представлено описание арифметических операторов, применимых в VBA.

Таблица 2. - Арифметические операторы VBA

Оператор

Описание

+

Сложение.

Вычитание.

*

Умножение

/

Деление

^

Возведение в степень, 5^2 равняется 25

\

Целочисленное деление. От результата деления отбрасывается дробная часть. Например, 10 \ 3 равняется 3.

mod

Деление по модулю. Возвращает остаток от деления. Например, 10 mod 3 равняется 1

Знак = используется в VBA в нескольких ролях.

Во-первых, это оператор присваивания. Например, такая запись: num_a = 10 + 2 означает: "Присвоить переменной num_a результат сложения чисел 10 и 2 " или, проще, "а равно 10+2".

Вторая роль оператора = заключается в том, что он используется в командах сравнения выражений.