Иллюстрированный самоучитель по Microsoft Access 2002

Переменные, константы и типы данных

Приведем теперь краткую сводку используемых типов данных VBA (табл. 13.1).

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

Тип данных Описание
Array Массив переменных, для ссылки на конкретный элемент массива используется индекс.
Boolean Требуемая память: зависит от размеров массива Принимает одно из двух логических значений: True или False. Требуемая память: 2 байта
Byte Число без знака от 0 до 255 Требуемая память: как нетрудно догадаться, 1 байт
Currency Используется для произведения денежных вычислений с фиксированным количеством знаков после десятичной запятой, в тех случаях, когда важно избежать возможных ошибок округления. Диапазон возможных значений: от – 922 337 203 685 477.5808 до 922 337 203 685 477.5807. Требуемая память: 8 байтов. Символ определения типа по умолчанию: @
Date Используется для хранения дат. Диапазон возможных значений: от 1 января 0100 г. до 31 декабря 9999 г. Требуемая память: 8 байтов
Double Числовые значения с плавающей точкой двойной точности. Диапазон возможных значений для отрицательных чисел: от – 1.797693 13486232Е308 до – 4.94065645841 247Е-324. Диапазон возможных значений для положительных чисел: от 4.94065645841 247Е-324 до 1, 7976931 3486232Е308. Требуемая память: 8 байтов. Символ определения типа по умолчанию: #
Integer Короткие целые числовые значения. Диапазон возможных значений: от – 32 768 до 32 767. Требуемая память: 2 байта. Символ определения типа по умолчанию: %
Long Длинные целые числовые значения. Диапазон возможных значений: от – 2 147 483 648 до 2 147 483 647. Требуемая память: 4 байта. Символ определения типа по умолчанию: &
Object Используется только для хранения ссылок на объекты. Требуемая память: 4 байта
Single Числовые значения с плавающей точкой обычной точности. Диапазон возможных значений для отрицательных чисел: от – 3.402823Е38 до – 1.401 298Е-45. Диапазон возможных значений для положительных чисел: от 1.401 298Е-45 до 3.402823Е38. Требуемая память: 4 байта. Символ определения типа по умолчанию:!
String Используется для хранения строковых значений. Длина строки: от 0 до 64 Кбайтов. Требуемая память: 1 байт на символ. Символ определения типа по умолчанию: $
Variant Может использоваться для хранения различных типов данных: даты/времени, чисел с плавающей точкой, целых чисел, строк, объектов. Требуемая память: 16 байтов, плюс 1 байт на каждый символ строковых значений. Символ определения типа по умолчанию: отсутствует
Определяемый пользователем тип Определяемые пользователем типы данных, назначение и размер выделяемой памяти зависят от определения. Используется для описания структур данных. Позволяет хранить в переменной такого типа множество различных значений разного типа

При описании переменной указание типа данных может быть опущено. Тип переменной в таком случае определяется последним символом имени переменной: @, #, %, &,! или $ (Currency, Double, Integer, Long, Single или String соответственно). Например, поскольку символ "$" является символом определения типа для строковых данных, то переменная под именем text$ автоматически становится переменной типа "строка символов". В дальнейшем этот специальный символ указания типа данных может быть опущен, однако постоянное присутствие в имени переменной символа определения типа будет напоминать о том, к какому типу данных относится эта переменная, что поможет избежать ошибок использования несовместных типов данных.

Если же последний символ не является ни одним из вышеперечисленных и явное указание типа тоже не используется, в этом случае переменной будет назначен по умолчанию тип данных Variant, который позволяет хранить в ней данные любого типа.

Учтите также, что нельзя использовать в одной и той же процедуре имена переменных, отличающиеся друг от друга только специальным символом определения типа в конце переменной. Например, не допускается одновременное использование переменных var$ и var%. Не допускается и явное объявление переменной, уже содержащей символ определения типа в конце имени, с помощью описателя As <типПеременной> (даже если такое определение не противоречит обычному применению символа определения типа). Так, например, вы получите сообщение об ошибке, попытавшись ввести любое из следующих определений:

Dim var1% As String
Dim var2% As Integer
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.