Типы данных и переменные

Тип данных определяет, каким образом величина хранится в памяти компьютера. Задавая тип данных, мы налагаем некоторые ограничения на сохраняемую величину, а именно: величина переменной, количество разрядов и др.

Наиболее распространенные типы данных приведены в таблице 2.

Таблица 2

Тип данных Диапазон
Byte (целый без знака) От 0 до 255
Boolean (логический) True или False
Integer (целый) от - 32768 до 32767
Long (длинный целый) от - 2147483648 до 2147483647
Single (число с плавающей запятой обычной точности) От - 3.402823Е +38 до - 1.401298Е-48 и от 1.401298Е-45 до 3.402823Е+38
Double (число с плавающей запятой двойной точности) От -1,79769313486232Е308 до -4,94065645841247Е-324 для отрицательных значений; от 4,94065645841247Е-324 до 1,79769313486232Е308 для положительных значений
Date (дата и время) от 01. 01. 100 до 31. 12.9999
String (строка) от 0 до 65535 символов
Variant Любой встроенный тип данных

Переменные - это поименованные области в памяти компьютера. После вычисления какого-либо значения оно записывается в память, чтобы затем можно было к нему возвращаться. Использование переменных дает Visual Basic возможность создавать прямое соответствие между областями памяти и заданным именем. Затем можно использовать это имя в программе.

Имя переменной может содержать цифры, буквы и знак подчеркивания, но обязательно должно начинаться с буквы.

Объявляя переменную, можно указать ее тип, указывая тем самым Visual Basic, какой тип данных должен быть использован при записи переменной в память. Если тип не указан - по умолчанию используется тип Variant, который дает возможность хранить в нем практически любую величину. Переменная объявляется следующим образом:

Dim <ИмяПеременной> [As Тип]

Пример.

Dim A As Integer Переменная А объявляется как целочисленная
Dim Фамилия As String Переменная Фамилия объявляется как строка символов

? Напишите оператор объявления переменной Х, которая является числом с дробной частью.

______________________________

Константы, в отличие от переменных, не могут изменять свои значения. Использование констант делает программы легче читаемыми и позволяет проще вносить исправления — отпадает необходимость многократно исправлять значения по тексту программы, т. к. достаточно ввести новое значение при определении константы.

Const <ИмяКонстанты> [As Single] = <Выражение>

Пример

Const ПроцентнаяСтавка As Single =0.2

Const g=9.8

Над переменными и константами могут выполняться операции.

В таблице 3 представлены математические операции VBA.

Таблица 3

Выражение Операция Пример
А B Результат
A+B Сложение 2.75 7,75
А – В Вычитание 2,75 2,15
А * В Умножение
А/В Деление 3.5
A \ В Целочисленное деление
A mod В Остаток от деления по модулю
A^B Возведение в степень

Стандартные математические функции VBA представлены в таблице 4.

Таблица 4

Обращение Функция
Abs(х) Модуль аргумента
Atn(x) Арктангенс (радианы)
Соs (x) Косинус (x в радианах)
Eхр(х) ex — экспонента
Int(x) Целая часть х, полученная отбрасыванием дробной части
Fix(x) Число, округленное до ближайшего меньшего целого
Log(x) Натуральный логарифм
Sin(x) Синус (х—в радианах)
Sqr(x) Корень квадратный
Tan(x) Тангенс числа

Старшинство операций (в порядке убывания приоритета):

ð операции в скобках;

ð вычисление функции;

ð ^ ;

ð смена знака;

ð *, /, \, mod;

ð +, -

ð = , >,<,>=,<=,<>,

ð Not,

ð And,

ð Or,

ð Xor.

Логические выражения в результате вычисления принимают логические значения True (Истина) или False (Ложь). Операндами логического выражения могут быть логические константы, переменные логического типа, отношения. В VBA чаще используют 4 логические операции: отрицание — NOT, логическое умножение — AND, логическое сложение — OR, исключающее “или” — XOR. Результаты логических операций для различных значений операндов приведены в таблице 5. Использованы обозначения: Т — True, F — False.

Таблица 5

А В not A A and В А оr В А хоr В
Т Т F Т Т F
Т F F F Т Т
F F Т F F F
F Т Т F Т Т

Пример. Записать математические выражения в виде арифметических выражений на VBA

Математическое выражение Выражение на VBA
x2-7x+6 x^2-7*x+6
Типы данных и переменные - student2.ru Типы данных и переменные - student2.ru (Abs(x)-Abs(y))/(1+Abs(x*y))
ln Типы данных и переменные - student2.ru Log(Abs((y-Sqr(Abs(x)))*(x-y/(z+x^2/4))))

? Напишите выражение на VBA для следующих функций

Математическое выражение Выражение на VBA
Типы данных и переменные - student2.ru  
Типы данных и переменные - student2.ru    

? Найдите ошибки в записи выражений на VBA

Математическое выражение Выражение на VBA
Типы данных и переменные - student2.ru   =tan2*a+1/2*cos(a)^2
Типы данных и переменные - student2.ru   =abs(exp^x)-(cos^2*x)^1/3

Функции преобразования типов выполняют преобразование переменной некоторого типа в заданный тип (таблица 6). Чаще всего выполняется преобразование из строки символов в число и числа в его строковое представление.

Таблица 6

Функция Назначение
Val (строка) Возвращает числа, содержащиеся в строке, как числовое значение соответствующего типа
Str(число) Возвращает значение типа variant (String), являющееся строковым представлением числа

В качестве допустимого разделителя функция Str воспринимает только точку. При наличии другого десятичного разделителя следует использовать функцию CStr. Остальные функции преобразования из данного типа в указанный приведены в таблице 7.

Таблица 7

Функция Тип, в который преобразуется выражение
CBool Boolean
CByte Byte
CDate Date
CDbl Double
CInt Integer
CLng Long
CSng Single
CStr String

? Запишите выражение, в котором переменная W преобразуется к типу Double.

______________________________

? Какому типу принадлежит переменная Y, после выполнения функции

Y = CInt(Y0)  
Y = CByte(Y0)  

Функции проверки типа позволяют узнать, является ли переменная выражением определенного типа (таблица 8).

Таблица 8

Функция Проверка
IsNumeric(х) Является ли переменная числовым значением
IsNull(х) Является ли переменная пустым значением (Null)
IsError(х) Является ли переменная кодом ошибки

Наши рекомендации