Офисное программирование

ОглавлениеДобавить в закладки К обложке

Обзор типов данных VBA

Тип данных – это термин, относящийся к определенным видам данных, которые VBA сохраняет и которыми может манипулировать. Любое определение типа задает:

область возможных значений типа;

структуру организации данных;

операции, определенные над данными этого типа.

VBA разделяет обрабатываемые данные на числа, даты, строки, логические значения и объекты (табл. 1).

Таблица 1

Типы данных VBA

Рассмотрим более подробно данные типы и выделим их яркие особенности.

VBA имеет шесть различных численных типов данных: Byte, Integer, Long, Single, Double и Currency. Численные типы данных используются для хранения (и манипулирования) чисел в различных форматах, в зависимости от конкретного типа. Численные типы предоставляют компактный и эффективный способ хранения чисел. Численный тип, заполняющий большую часть памяти (имеющий самый большой диапазон возможных значений), занимает не более восьми байтов памяти для хранения чисел, которые могут иметь до 300 цифр.

Числа с плавающей точкой (floating point numbers) могут иметь любое число цифр до или после десятичной точки (в пределах границ конкретного типа данных) и получили свое название вследствие того факта, что десятичная точка «плавает» из одной позиции в другую, в зависимости от того, сохраняется в памяти большое или малое значение. Числа 24.09156, –1207.7, –0.00225 и 444.67779 – это числа с плавающей точкой. Числа с плавающей точкой иногда называют также действительными (real) числами. Данные типы с плавающей точкой используются всякий раз, когда требуется сохранить число, имеющее дробную часть. VBA имеет два различных типа данных с плавающей точкой: Single и Double.

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

VBA-тип Currency – это число с фиксированной точкой (fixed-point number), т. е. десятичная точка всегда находится в одном и том же месте – справа от десятичной точки всегда имеются четыре цифры. Тип Currency используется для хранения чисел, когда точность крайне важна, что бывает при «денежных» вычислениях.

Любые текстовые данные, сохраняемые в программе VBA, называются строками (strings). Строки в VBA сохраняются с использованием типа данных String. Строки получили такое название, потому что текстовые данные обычно рассматриваются как строки символов. Строка может содержать текстовые символы любых типов: буквы алфавита, цифры, знаки пунктуации или различные символы. Строки в коде VBA всегда заключаются в двойные кавычки ("").

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

Типы String играют важную роль во многих программах VBA. Большинство данных ввода пользователей (в диалоговых окнах, ячейках рабочих листов) – это строковые данные. Кроме того, поскольку на экране можно отображать только текст, все другие типы данных должны быть преобразованы в строковые данные перед тем, как они будут выведены на экран. Многие встроенные процедуры VBA используют строковые данные во всех или в некоторых своих аргументах.

VBA использует тип Date для хранения даты и времени. VBA-тип Date является типом последовательных дат (serial Dates). (Последовательные даты сохраняют дату как число дней от заданной стартовой даты.) Базовой датой для VBA-типа Date является 30 декабря 1899. VBA использует отрицательные числа для представления дат ранее 12/30/1899 и положительные – для дат после 12/30/1899. Число 0 представляет саму дату 12/30/1899. По этой схеме 1 января 1900 записывается числом 2 (01/01/1990 – это 2 дня после 12/30/1899), однако число –2 является датой 12/28/1899 (два дня до 12/30/1899).


Логин
Пароль
Запомнить меня