- •Понятие процедур, функций, операторов, переменных
- •Переменные
- •Принципы и правила выбора имен для переменных
- •Типы переменных (данных)
- •Числовой тип
- •Строковый тип (текстовая строка)
- •Тип Date (дата)
- •Логический тип
- •Произвольный тип
- •Объектный тип
- •Создание переменных
- •Объявление переменной (variable declaration)
- •Требование явного объявления переменных. Область действия переменных. Константы. Правила написания констант. Операции и знаки операций Требование явного объявления переменных
- •Присваивание переменной (assigning the variable)
- •Область действия или видимости (scope - скауп) переменных
- •Использование переменных с одним и тем же именем в различных уровнях области действия
- •Правила того, как долго переменные удерживают свое значение
- •Константы
- •Создание именованных констант
- •Область действия констант
- •Написание констант
- •Операции и знаки операций
- •Получение приоритета:
- •Преобразование типов данных. Процедуры и функции. Типы операторов. Состав проекта Назначение типов данных
- •Преобразование типов данных
- •Преобразование числовых типов данных
- •Строковые переменные
- •Строки изменяемой и фиксированной длины
- •Преобразование числовых данных в строковые
- •Форматирование данных
- •Процедуры и функции
- •Аргументы
- •Примеры процедур
- •Функции
- •Обзор типов операторов
- •Операторы объявления
- •Операторы присваивания (инициализации)
- •Выполняемые операторы
- •Параметры компилятора
- •Состав проекта
- •Массивы. Классы объектов. Характеристики объектов. Объектная модель. Окно просмотра объекта. Комментарии. Управление потоком Массивы
- •Статические массивы
- •Динамические массивы
- •Пример работы с массивом
- •Классы объектов
- •Наследование
- •Полиморфизм
- •Инкапсуляция
- •Семейства объектов
- •Объектная модель
- •Использование Окна просмотра объектов
- •Замечания о комментариях
- •Управление потоком
- •Управление потоком (продолжение). Условные переходы. Циклы. Оператор With. Немедленный выход с помощью оператора Exit For Оператор Go to Примеры работы с двоичной логикой
- •Операторы условного перехода:
- •Оператор условного перехода If…Then
- •Пример использования условного перехода If…Then
- •Оператор условного перехода If…ElseIf
- •Оператор Select Case
- •Операторы циклов:
- •Повторение под управлением цикла For…Next
- •Пример вложенных циклов For…Next
- •Важные замечания по поводу циклов For…Next
- •Использование оператора цикла For Each… Next
- •Циклы Do…Loop
- •Типы оператора цикла Do…Loop
- •Пример оператора Do While (условие) Loop
- •Использование оператора Do …Until Loop (условие)
- •Использование оператора With
- •Использование оператора Is
- •Немедленный выход с помощью оператора Exit For
- •Управление потоком с помощью оператора Go To
- •«Ввод-вывод данных. Системные функции InputBox и MsgBox» Функции InputBox и MsgBox
Типы переменных (данных)
-
Числовой: (всего 6 типов).
-
Строковый:
String (216 символов), префикс str;
-
Дата:
Date (8 байт: дата и время), префикс dat;
-
Логический:
Boolean (2 байта: True или False), префикс bool;
-
Произвольный:
Variant (>16 байт), префикс var;
-
Объектный:
Object (4байта: ссылка), префикс obj.
Числовой тип
VBA имеет 6 различных числовых типов данных: Byte, Integer, Long, Single, Double, Currency:
-
целые числа: Byte; Integer; Long;
-
дробные числа:
-
с плавающей точкой: Single; Double;
-
с фиксированной точкой – Currency.
Численные типы данных используются для хранения и манипулирования чисел в различных форматах в зависимости от конкретного типа. Численный тип, имеющий самый большой диапазон возможных значений, занимает не более 8 байтов памяти для хранения чисел.
Типы целых чисел (три типа):
Тип Byte, префикс byte, (один байт памяти) – это наименьший из 3-х типов целых чисел и предназначен для хранения чисел только от 0 до 255). В типе Byte нельзя хранить отрицательные числа. Тип Byte используется для хранения двоичных данных: графических, звуковых файлов и т. п.)
Тип Integer (интидже), префикс int, (целое, 2 байта, 65536 значений) – хранит числа от –32768 до 32767.
Числа 1, 3768 и 12 – целые, но, например, число "1,0" не является целым, хотя дробная часть и равна 0, т. к. целые не содержат десятичного знака, даже если он нулевой.
Тип Long, префикс lng, (4 байта, около 4, 3 млрд. значений) - хранит числа от –2147483648 до 2147483647.
Типы Byte, Integer, Long имеют два преимущества по сравнению с другими численными типами данных: целые требуют меньше памяти, а математические операции и операции сравнения над числами этих типов быстрее, чем для численных типов данных с плавающей запятой.
VB автоматически преобразует данные типов Byte, Integer, Long в текст, когда они выводятся на экран, при использовании, например, таких процедур, как окно сообщения MsgBox.
Дробные числа (3 типа)
- с плавающей точкой (floating (флаутинг) point numbers):
- Single;
- Double.
Эти типы могут иметь любое число цифр до и после точки (в пределах границ конкретного типа данных). Иногда эти числа называют также действительными (real) числами.
Тип Single, префикс sng, (4 байта памяти). Хранит отрицательные числа от ‑3,402823*1038 до -1,401298*10-45 и положительных от 1,401298*10-45 до 3,402823*1038. Это числа одинарной точности (Single - precision numbers).
Тип Double, префикс dbl, (8 байтов памяти). Для хранения отрицательных чисел от ‑1,79769313486232*10308 до –4,94065645841247*10-324 и положительных от 4,94065645841247*10-324 до 1,79769313486232*10308. Это числа двойной точности (Double - precision (присизен) numbers).
Однако у этих типов чисел имеются два небольших недостатка:
-
операции, выполняемые над числами с плавающей точкой, медленнее, чем над числами других типов данных;
-
числа, хранимые в типах данных с плавающей точкой, подвержены ошибкам округления.
Как и в случае с целыми типами данных, VB автоматически переводит числа типа Single и Double в текстовый формат, когда пользователь выводит их на экран. Если число с плавающей точкой очень большое или очень малое, то для его отображения используется экспоненциальное представление.
- фиксированной точкой:
Это тип Currency (денежный), префикс cur, (8 байтов: "15"."4"). Числа с фиксированной точкой (fixsed-point number) имеют справа от десятичной точки 4 разряда (дробных) и 15 разрядов целых. Тип Currency используется для хранения чисел, когда точность чрезвычайно важна, что бывает при денежных вычислениях.
Ошибки вычисления при этом небольшие или их вообще нет. Ошибки возникают лишь тогда, когда числа типа Currency умножаются или делятся на числа других типов. При выводе на экран значения типа Currency автоматически преобразуются в текст.