Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VBA For Excel Часть 01.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
1.16 Mб
Скачать

Имя_Модуля1.Имя_Поля

Но если в других модуля макросов не содержится глобальных полей с именем совпадающем с именем поля в Модуле1, то VBA допускает обращение к этому полю просто по имени.

Числовые переменные VBA после их объявления имеют по умолчанию значение 0. Строковые переменные по умолчанию не содержат в себе символов, т.е. являются пустой строкой. Строки фиксированной длины имеют объявленную длину(см. таблицу типов). Логическая переменная имеет значение False. Переменная Variant – Empty, а переменная Object – NoThing.

2.2.2 Неявное и явное объявление переменных ( Оператор Option Explicit )

В предыдущей главе Объявление переменных и констант, нами было описано явное объявление переменных оператором Dim .

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

% - короткое целое (Integer )

& - длинное целое ( Lоng )

! - Вещественное одинарной точности ( Single)

# - Вещественное двойной точности ( Double )

@ - Денежное, числовое с фиксированной запятой ( Currency )

$ - Строковое ( String )

Кроме того, возможно неявное объявление типа переменных следующими операторами:

DefByte – переменная байт (Byte)

DefInt - короткое целое (Integer )

DefLng - длинное целое ( Lоng )

DefSng - Вещественное одинарной точности ( Single)

DefDbl - Вещественное двойной точности ( Double )

DefCur - Денежное, числовое с фиксированной запятой ( Currency )

DefBool – Логический ( Boolean )

DefDate – Дата ( Date )

DefStr - Строковое ( String )

DefVar – Универсальный ( Variant )

Данные операторы должны быть записаны в общей области (General) модуля, до первого, явного объявления переменных. За именем оператора должен следовать список из букв. Например, в начале модуля может быть записана следующая программная инструкция:

DefInt I-K

DefBool B

Которая обозначает, что все необъявленные переменные в модуле, имена которых начинаются с букв I, J, K имеют тип Integer. И все необъявленные переменные в модуле, имена которых начинаются с буквы B имеют тип Boolean.

Оператор Option Explicit находящийся в начале общей области (General) модуля, запрещает неявное объявление переменных в указанном модуле. Если в меню редактора VBA Сервис-Параметры-Редактор установлен флажок “явное объявление переменных”, то все новые модули вставляемые в проект VBA будут содержать оператор Option Explicit.

2.3 Неименованные константы

В строковых неименованных константах текст берется в двойные кавычки:

Текст”

Если нужно печатать кавычку ( ) в тексте, то этот символ в кавычках повторяют:

Д””aртаньян” в память компьютера попадет текст: Д”aртаньян

В VBA есть понятие пустой строки, т.е. такой строки, которая не содержит в себе ни одного символа, такая строка задается плотно сжатыми кавычками - “”.

В целых неименованных константах числа записываются точно так же, как они записываются в математике.

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

Пример:

1е-2 (т.е. 1 помножить на 10 в –2 степени)

В обоих примерах представлено число: 0,01

Логическая неименованная константа может иметь два значения:

  • True – соответствует истине

  • False – соответствует лжи

Неименованная константа типа Data может задаваться двумя ниже перечисленными способами:

  • #Месяц/Число/Год#

  • “Число.Месяц.Год”

где

Число – число, указывающее число месяца

Месяц – число, указывающее номер месяца

Год – число, указывающее год

Примеры:

#2/1/2003#

“1.2.2003”

В обоих примерах представлена следующая дата: 1 февраля 2003 года.

В неименованной константе типа Data может быть так же представлено время:

  • #Час:Минуты:Секунды#

  • “Час:Минуты:Секунды”

где

Час – число, указывающее час

Минуты –число, указывающее минуты

Секунды –число, указывающее секунды

Возможно задать время в 12 часовом режиме, в этом случаи, через пробел за временем вводятся две латинские буквы: PM – обозначают, что время указано после полудня, AM – обозначают, что время указано до полудня.

Пример:

#13:02:10#

“13:02:10”

“01:02:10 PM”

#01:02:10 PM#

Во всех примерах представлено следующее время: 13 часов 2 минуты 10 секунд.

Также, в неименованной константе Data может быть представлено и время и дата, при этом с начало записывается дата, а вслед за ним, через пробел время.

Пример:

#2/1/2003 13:02:10#

“1.2.2003 13:02:10”

#2/1/2003 01:02:10 PM#

“1.2.2003 01:02:10 PM”

Во всех примерах представлено следующая дата и время: 1 февраля 2003 года 13 часов 2 минуты 10 секунд.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]