Строковый (текстовый) тип данных



Для описания переменных содержащих символы алфавита, знаки пунктуации, цифры и др. символы, используется тип String. Тип String позволяет хранить строки как фиксированной длины, так и переменной.

String переменной длины позволяет хранить текстовые данные от 0 до 2147483648 символов и требует памяти один байт на один символ т.е. при максимальном размере 2048мб.

String фиксированной длины позволяет хранить до 65536 символов т.е. 64Кб

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

К логическому типу относится тип Boolean. Хранит всего два значения 0 и 1 (TRUE и FALSE). Требует 2 байта памяти. Любые логические операции используют данные этого типа.

Тип данных дата

Тип Dateпозволяет хранить дату в диапазоне с 1 января 100 года по 31 декабря 9999 и время от 0:00:00 до 23:59:59. Требуется памяти 8 байт.

Неопределенный тип данных

К неопределенному типу относится тип Variant. Variantэтотип данных, который используется во всех переменных с необъявленным явно типом. Этот тип данных может хранить любой из вышеперечисленных типов за исключение типа Object.На первый взгляд этот тип может показаться более удобным, однако его рекомендуется использовать только в исключительных ситуациях. Данные этого типа обрабатываются значительно медленнее и занимают в разы больше памяти. Этот типа требует памяти 16 байт, в случае если хранится текст, то к 16 + 1 байт на каждый символ.

Тип данных объект

Тип Object используется для доступа к любому объекту известному в VBA. Переменная этого типа сохраняет адрес объекта. Использует память 4 байта.

Преобразования типов

Функции преобразования типов данных в языке VB 6.0.

Ввод-вывод значений, в том числе и числовых, осуществляется в строковой форме. При передаче значения числовой переменной оно преобразуется автоматически в числовую форму. Это выполняется системой с помощью функции Val(X$). После вычисления результат преобразуется автоматически в строковую форму. Здесь системой используется функция Str(X).

Функция Val(X$)возвращает число, содержащееся в строке. Аргумент должен быть строкой, которую нужно преобразовать в число. Она удаляет из аргумента пробелы. Если в аргументе встретился символ, который нельзя преобразовать в часть числа, преобразование завершается.

Функция Strпреобразует численное выражение в строку. При преобразовании отрицательнх чисел перед первой цифрой в строке ставится знак «-«, при преображовании положительных чисел – пробел.

В таблице ниже приведен полный список функций преобразования и тип, в который происходит преобразование:

Функция Возвращает тип Действие
CBool Boolean Преобразует значение в булевый тип
CByte Byte Преобразует значение в тип Byte
CCur Currency Преобразует значение в тип Currency
CDate Date Преобразует значение в Дату и Время
CDbl Double Преобразует значение в тип Double
CDec Decimal Преобразует значение в подтип Decimal типа Variant
CInt Integer Преобразует значение в целый тип
CLng Long Преобразует значение в длинное целое
CSng Single Преобразует значение в тип Single
CStr String Преобразует значение в строку
CVar Variant Преобразует значение в тип Variant

Использование функций преобразования типов

Работать с функциями преобразования легко. К примеру, необходимо преобразовать число 4568 в строку:

Dim OutStr as String
OutStr = CStr(4568)

Преобразование строки или числа в булевый тип

Dim OutBool as Boolean
'Функциявернетзначение True
OutBool = CBool(1)
OutBool = CBool ("TRUE")

Преобразование строки или числа в дату и время

Dim OutDate as Date
OutDate = CDate("25/06/03 23:35")
OutDate = CDate("25.06.03")
OutDate = CDate("37797,9826388889")

Примечание:Функции преобразования можно использовать непосредственно в выражении избегая создания лишних переменных. Например: x=y+CInt("456")+z

 

Константы и переменные

Что такое переменные?

Переменная это некоторое выделенное пространство в памяти компьютера, которое может содержать данные разных типов – числовые, текстовые, логические и т.д. (о типах данных в VBA рассказано в этой статье), а так же результаты вычислений. Значение переменной присваивается с помощью знака равенства. Для удобства работы с переменными в языках программирования предусмотрена возможность задания человеко-понятных имен, к примеру, имена переменных rFIO, rBirthday. К именам переменных в VBA имеется ряд требований:

  • Переменная может содержать латинские символы, числа. Использование пробела и точки в имени переменной недопустимо (вместо пробела программисты используют знак "_");
  • Имя переменной должно начинаться с текстового символа (числа в начале не допустимы);
  • Не допускается использование следующих символов: #, $, %, &, !. Эти символы в VBA зарезервированы за кратким указанием типа переменной без ее описания. К примеру: содержание символа $ (MyTxt$) в конце имени переменной указывает, что значение хранимое в этой переменной текстового типа;
  • Недопустимо использование зарезервированных слов. Если все ж для понимания назначения переменной необходимо использование в имени зарезервированного слова, то можно добавить некоторый символ или символы, например: Date зарезервировано (тип дата), для использования можно добавить "My", после чего получим допустимое - MyDate;
  • Имя переменной не должно быть длиннее 254 символов. Но я не думаю, что кому-то придет в голову для переменной задавать имя длиннее 15-20 символов, не говоря уже о 254;
  • Язык VB не чувствителен к регистру, поэтому переменные MyVar и myvar для VBA одинаковы.

Пара советов по именованию переменных. Давайте имена переменным понятные, но в тоже время короткие т.к. с длинными именами сложнее работать. VBA позволяет описывать переменные в любой области кода, что в дальнейшем, при большом кол-ве строк программного кода может вызвать затруднение с поиском и определением типа. Из своего опыта советую не лениться описывать все переменные в начале процедуры или функции, определив, таким образом, некоторый блок переменных. Можно также оставить комментарии с подробным описанием назначения переменной.

Описание переменных в VBA

Под описанием переменной подразумевается указание типа данных. В VBA переменные можно указывать явным и неявным образом. Не явным образом означает, что Вы можете в любом месте кода указать имя переменной и начать с ней работать, в таком случае тип этой переменной принимается как Variant. Такой способ удобен, но не рекомендуется т.к. может возникнуть путаница и как следствие, ошибки при вычислениях. Явное описание осуществляется после ключевого слова Dim [имя переменной] As [Тип], например:Dim MyInt As Integer. В случае такого описания переменная MyInt будет хранить в памяти только значения целого типа.


Дата добавления: 2018-02-28; просмотров: 503; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!