Задание типа данных переменной
Хотя объявлять тип переменным не обязательно ( VBA автоматически им присваивает тип Variant), объявление типа переменных имеет несколько преимуществ:
· – объявленные переменные ускоряют выполнение кода программ. Так как при объявлении указывается VBA тип переменной, выполнение программы ускоряется на то время, которое VBA потратил бы на анализ переменной типа Variant,чтобы определить ее конкретный тип.
· – объявленные переменные повышают эффективность кода. Переменные типа Variant могут занимать гораздо больше памяти, чем переменные определенных типов. Объявленная переменная занимает только память, необходимую для этого определенного типа, поэтому это может значительно сократить объем памяти, требуемый для программы;
· – программный код с типизированными переменными легче читать и понимать.
Объявить тип переменной можно явно и неявно.
Для явного объявления переменной и ее типа используется оператор Dim, который в общем случае имеет следующий формат:
Dim name_l As type_l, name_2 As type_2, ...
Примеры правильного синтаксиса для объявлений типа переменных:
Dim Price As Currency
Dim DataPlata As Date
Dim Message As String
Dim Counter As Integer
Dim Profit As Single, Gross As Currency, Message As String
При неявном объявлении тип переменной задается добавлением символа определения типа в конец имени переменной (см. табл. 9.2), например:
MyVar% = 25
CelsiusTemp! = 15,35
Title$ = "Excel"
Хотя неявное объявление переменных удобно, с ним связаны некоторые проблемы. Когда переменные объявляются неявно, существует риск нечаянно создать новую переменную, когда на самом деле, необходимо использовать уже существующую переменную, или использовать существующую переменную, когда надо создать новую. Обе эти ситуации приводят к ошибкам в коде, которые очень трудно отслеживать.
Чтобы было легче в любое время обнаружить ошибки, связанные с неявным объявлением переменных, VBA предоставляют команду Option Explicit. При использовании команды Option Explicit VBA требует объявления всех переменных перед (с помощью оператора Dim) перед их использованием.
Независимо от того, объявляются ли переменные типа String с помощью тора Dim или добавлением символа определения типа $, создаваемые строковые переменные по умолчанию являются строками переменной длины. Строковые переменные переменной длины изменяют длину, в зависимости от длины строки, сохраняемой переменной. Иногда может понадобиться использовать строку фиксированной длины. Строки фиксированной длины всегда имеют одну и ту же длину. Они полезны, если необходимо обеспечить, чтобы текст, сохраняемый в строковой переменной, всегда содержал одно и то же число символов.
Общий синтаксис для создания строки фиксированной длины:
Dim name As String * N
N – число, определяющее длину строки.
После объявления переменной, независимо от того, объявляется ли эта переменная явно или неявно, и как задается тип, эта переменная сохраняет тот же самый тип столько времени, сколько она существует. Нельзя переобъявить переменную или переопределить ее тип.
Дата добавления: 2015-08-14; просмотров: 643;