Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
33
Добавлен:
15.03.2016
Размер:
602.11 Кб
Скачать
      1. Инструкции vba

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

  1. Инструкции описания

  2. Инструкции присваивания

  3. Исполняемые инструкции

      1. Присвоение значений

        1. Оператор присваивания

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

Синтаксис:

[Let] <Объект, которому присваивается значение> = <Выражение>

Инструкция Letнеобязательна и, чаще всего, опускается. Оператор присвоения предписывает выполнить выражение, заданное в его правой части, и присвоить результат переменной, имя которой указано в левой части. В результате, например, действия следующей пары операторов х = 2 х = х + 2 переменной «х» будет присвоено 4.

Для присвоения переменной ссылки на объект применяется инструкция Set.

Синтаксис:

SetОбъектнаяПеременная = [New]<ОбъектноеВыражение |Nothing>

Аргументы:

Newиспользуется при создании нового экземпляра класса;

Nothingпозволяет освободить все системные ресурсы и ресурсы памяти, выделенные для объекта, на который имелась ссылка (вольно говоря, она удаляет объект из памяти).

В следующем примере инструкция Setприсваивает переменной «Область» диапазон А1:B3:SetОбласть =Range("A1:B3")

        1. Совместимость типов

Переменной заданного типа можно присваивать только такое значение, которое соответствует этому типу. Например, если была описана переменная «a» типаInteger, то этой переменной нельзя корректно присвоить значение переменной «b» типаSingle, посколькуVBAне сможет правильно отобразить значение с плавающей точкой на множество целых чисел. Выполнение инструкцииa=bприведёт к тому, что в переменной «a» будет сохранено округлённое до целого значение переменнойb, что может привести к ошибке при дальнейшем использовании этого значения. Кроме того, в связи с тем, что в переменной типаSingleможет быть сохранена большая величина, чем диапазон допустимых значений типаInteger, выполнение этой инструкции может вызвать ошибку переполнения в процессе выполнения программы.

С другой стороны обратное отображение может быть выполнено вполне корректно, и переменной типа Singleвсегда может быть присвоено значение переменной типаInteger.b=aвсегда будет корректно выполняться.

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

В случае необходимости переменной одного типа присвоить значение другого типа, необходимо воспользоваться соответствующей функцией преобразования типов. При этом такое преобразование не спасает от ошибок переполнения. Функции преобразования типов будут рассмотрены ниже.

      1. Форматирование строк программы

Каждая строка программы на VBAвоспринимается как инструкция. В некоторых случаях бывает удобно разбить одну инструкцию на несколько строк или разместить в одной строке несколько инструкций.

        1. Перенос инструкции

Расположение символов (пробел) + (Знак подчеркивания) в конце строки обеспечивает то, что последующая строка является продолжением предыдущей. При этом надо помнить, что:

  1. Нельзя разбивать переносом строковые константы

  2. Допустимо не более семи продолжений одной строки

  3. Строка не может состоять более чем из 1024 символов

Например: Dim a As Integer, b As Byte _ S As String