VBA для «чайников» (Каммингс) - страница 103

Хотя VBA и не возражает против того, чтобы между объявлениями в процедуре размешались выполняемые операторы, программный код будет восприниматься проще, если поместить все объявления в самое начало процедуры. Вот образец правильного размещения операторов внутри процедуры:


>

Public Sub VariableProcedures ( )

Dim strChildsName As String

Dim intToyCount As Integer

Dim curAllcwance As Currency

strChildsName = inputBox(Введите имя ребенка:)

‘ в следующих двух строках CountToys 11 NewAllowance

' представляют процедуры типа Function, определенные

' где-то в другой части программы

intToyCount = CountToys(strChildsName)

curAllowance = NewAllowance(strChildsName, intToyCount)

End Sub


Когда объявлять переменные

Все эксперты, как один, рекомендуют объявлять переменные заранее, а не там, где они должны первый раз использоваться в программе. Один из очевидных аргументов в пользу этого - упрощение программного кода. Другие аргументы начинают работать, когда используется директива Option Explicit для компилятора, которая будет обсуждаться ниже, в разделе Явные объявления приветствуются.

Правда, по умолчанию VBA не запрещает использование переменных без предварительного их объявления. Если где-нибудь в программе вы напечатаете А = 7, VBA добросовестно создаст переменную с именем А и поместит в нее значение 7. Переменные, которые вы создаете без предварительного объявления, автоматически получают тип Variant, который будет рассмотрен в следующем разделе.

Выбор и использование типов данных

В объявлении переменной можно просто указать ее имя. Следующий оператор дает указание VBA выделить пространство для переменной с именем variable, но не указывает, информацию какого типа будет эта переменная хранить:

Dim Variable

Альтернативой будет явное объявление типа данных переменной. Оператор

Dim sngMyOldSocks As Single объявляет sngMyOldSocks как переменную типа Single, что означает переменную, хранящую не слишком большое число с плавающей запятой, - что-то вроде чисел, использующихся для представления физических величин, с десятичной запятой и экспонентой, как, например, 6,02 x 10

VBA предлагает целый ряд других типов данных для переменных, включая исключительно удобные типы Date (Дата) и Currency (Денежный). Внимательно ознакомьтесь со всеми доступными типами данных, поскольку их правильное использование даст ключ к созданию правильно работающих программ. В табл. 7.1 приводятся основные факты, касающиеся типов данных, а дополнительные сведения и обсуждение приемов работы с конкретными типами данных вы найдете ниже, в разделе Дополнительные сведения о типах данных.