Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по программированию.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
564.74 Кб
Скачать

3. Величины

Величины делятся на переменные – их значения можно менять в ходе выполнения программы и постоянные (константы) – их значения не изменяются в ходе выполнения программы.

Переменные

Переменная представляет собой именованное место хранения данных в памяти компьютера.

Правила именования переменных:

  • вы можете использовать в названиях символы букв, числа и некоторые знаки препинания, но первой в имени всегда должна вводиться буква;

  • VBA не различает регистры;

  • специальные символы % & ! # @ $, ключевые слова языка Visual Basic, имена стандартных объектов, пробелы или точки нельзя использовать в именах переменных;

  • названия переменных ограничены длиной 254 символа.

Каждая величина имеет тип. Тип определяет сколько места в памяти отводиться под хранение величины и какие операции можно проводить с ней.

Встроенные типы данных vba.

Тип данных

Требуемая память

Диапазон значений

Boolean (логический)

2 байта

True, False

Byte

1 байт

0…255

Integer (целое)

2 байта

-32768 …+32767

Long (длинное целое)

4 байта

Примерно: -2000 000 000…+2000 000 000

Single (c плавающей

точкой обычной точности)

8 байтов

3,4E38 …-1,4 E-45 для отрицательных значений; 1,4E-45 … 3,4E38 для положительных значений

Double (c плавающей

точкой двойной точности)

8 байтов

-1,7E308 … -4,9E-324 для отрицательных значений; 4,9E-324 … 1,7E308 для положительных значений

Currency (денежный)

8 байтов

Десятичные числа с фиксированной позицией запятой. Возможны 15 цифр до запятой и 4 после.

String (переменной длины)

10 байт+длина строки

От 0 до приблизительно 2 млрд

String (фиксированной длины)

Длина строки

От 1 до приблизительно 65400

Variant (числа)

16 байт

Любое числовое значение в рамках диапазона Double

Variant (символы)

22 байта + длина строки

Обычно перед использованием переменной производиться ее объявление в операторе Dim со следующим синтаксисом:

Dim имя переменной As тип переменной

Объявление переменной означает резервирование для нее при выполнении программы места в памяти, объем которого зависит от объявленного типа переменной.

Область действия переменной.

Область действия переменной определяет в каких модулях и процедурах она может использоваться. Существуют следующие типы областей действия переменных:

Локальные переменные. Локальная переменная – это переменная, объявленная в процедуре. Локальные переменные могут использоваться только в процедуре в которой объявлены. После выполнения процедуры переменная становиться невостребованной, поэтому Excel освобождает соответствующую область памяти. Наиболее популярный способ объявить локальную переменную – вставить оператор Dim между операторами Sub и End Sub. Можно объявить несколько переменных, воспользовавшись одним оператором Dim:

Dim x As Integer, y As Integer, z As Integer

Если вы не объявили тип данных для переменной, используемой в процедуре VBA по умолчанию будет задан тип данных Variant.

В отличие от других языков программирования в VBA нельзя объявить тип данных одновременно для группы переменных, разделив переменные запятыми:

Dim i, j, k As Integer:

Данный оператор является корректным, то есть сообщения о синтаксической ошибке не будет, однако только k объявляется как целое, переменные i, j получают тип данных Variant.

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

Как правило, локальные переменные – самые эффективные, так как VBA освобождает память, которую он использует после окончания выполнения процедуры.

Переменная уровня модуля. Иногда необходимо, чтобы переменная была доступна во всех процедурах модуля. В таком случае объявите переменную перед новой процедурой модуля, за пределами процедур или функций.

Переменные Public. Чтобы сделать переменную доступной во всех процедурах всех модулей VBA-проекта необходимо объявит переменную на уровне модуля, с помощью ключевого слова Public, а не Dim.

Переменные Static – объявляются на уровне процедуры и сохраняют свое значение после окончания процедуры.

Вид переменной

Область

действия

Способ объявления переменной

Локальная

Отдельная процедура

В процедуру включается оператор Dim или Static

Уровня модуля

Отдельный модуль

Перед первой процедурой в модуле вводиться оператор Dim или Private

Переменные Public

Все модули

Перед первой процедурой в модуле вводиться оператор Public