Строковый (текстовый) тип данных
Для описания переменных содержащих символы алфавита, знаки пунктуации, цифры и др. символы, используется тип 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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!