Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по Инф_11-12.docx
Скачиваний:
13
Добавлен:
25.12.2018
Размер:
6.65 Mб
Скачать

Знакомство с редактором Visual Basic for Application (vba). Среда vba

Редактор VBA можно открыть и с помощью команды:

вкладка Разработчик /Группа Код /Редактор Visual Basic

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

Вставка Исходный текст (Alt+F11)

Строка меню основного окна Visual Basic содержит:

File –позволяет создавать, открывать, сохранять, печатать проекты, добавлять новые, удалять и сохранять существующие формы проекта, а также создавать *.ехе файлы.

Edit – команды редактирования объектов. Они позволяют вырезать, копировать, вставлять, удалять, связывать объекты и т.д.

View – служит для активизации необходимых окон.

Project – служит для добавления новых форм, модульных листов, удаления ненужных форм, установления параметров проекта и т.д.

Format – служит для выбора другого набора инструментов для компоновки элементов управления на поле экранной формы.

Debug – для отладки и редактирования программы

Run – для проверки работоспособности программы, путем ее выполнения.

Tools – для установки различных режимов работы (опций).

Add-Ins – для расширения программной оболочки Visual Basic, путем предоставления дополнительных возможностей и удобств.

Windows – служит для изменения расположения окон проекта, для переключения между окнами.

Help – встроенная помощь и учебник по Visual Basic.

Помимо основного окна в редакторе Visual Basic есть еще 9 окон (мы будем использовать в основном 5 из них):

  • окно проводника проекта (Project Explorer), в котором отображается состав компонент открытого проекта (по умолчанию оно открыто и находится в левой части окна редактора);

  • окно формы (UserForm) для создания пользовательских форм;

  • окно (панель) инструментов (Toolbox), где показан набор пиктограмм, представляющих элементы управления, которые могут использоваться в разрабатываемом приложении;

  • окно свойств (Properties), в котором перечислены свойства (параметры) выбранного объекта, которые можно быстро изменить непосредственно в этом окне;

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

Примечание. Если при запуске Visual Basic, необходимое окно отсутствует, его необходимо активизировать, выполнив соответствующую команду из меню View.

Лекция №7 Синтаксис и программные конструкции vba Основы синтаксиса

VBA не чувствителен к регистру.

Новый оператор начинается с новой строки.

В любом месте программы может стоять комментарий, который начинается с апострофа «’».

Длинный оператор можно разбить на несколько строк, используя пробел и символ подчеркивания « ­_ ».

В одной строке можно помещать несколько операторов, разделяя их двоеточием «:».

Символьные значения должны заключаться в двойные кавычки.

Компоненты языка Переменные, константы, типы данных Переменные

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

Все переменные имеют имя и значение. Имена начинаются с латинской буквы, не должны превышать 255 символов, в них нельзя использовать ключевые слова языка и имена стандартных объектов.

A=2.5

I = I +1 -приращение значения переменной

Здесь знак «=» – это знак присваивания, а не равенства.

Обычно, перед использованием переменную объявляют в операторе Dim - для резервирования места в памяти компьютера (при выполнении программы), объем которого зависит от объявленного типа переменной. Процесс использования переменной походит на заказ столика в ресторане. Вы можете использовать ее сразу, но лучше, позаботиться об этом заранее.

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

Приведем некоторые типы переменных:

Тип переменной

Переменная

Объем занимаемого места в памяти

integer

целые числа от -32 768 до 32767

2 байта

long

Длинное целое

4 байта

single

вещественные

1.23456789Е-12 = 1.23456789×10-12

4 байта

double

вещественные двойной точности

8 байт

string

символьные значения (буквы)

4 байта

variant

любые данные

8 байт

boolean

Булевы (true, false)

2 байта

Integer – целые числовые значения. Диапазон значений от –32768 до 31767. Требуемая память 2 байта.

Single – числовые значения с плавающей точкой одинарной (обычной) точности. Диапазон значений от 3,402823Е+38 до 1,401298Е-45. Требуемая память 4 байта.

String – символьные (строковые) значения. Диапазон значений от 0 до 65535 символов. Требуемая память 1 байт на символ.

Variant – для хранения любых данных. При использовании этого типа данных, не самым экономным способом расходуется память, и переменные этого типа требуют больше времени на обработку. Требуемая память 16 байт – для чисел и 22 байта + 1 байт на символ – для строк.

Кроме этих типов существуют еще:

Long – длинное целое число.

Double – число плавающей точкой двойной точности (для работы с огромными числами).

Byte (байт) – для хранения 8-бит (1байт) числовой информации со значениями от 0 до 255.

Currence – число с фиксированной точкой.

Boolean – булево число. Оно может принимать 2 значения – False и True. При присваивании переменной типа Boolean любого значения отличного от “0” – переменная примет значение – True и только “0” – значение False.

Date – дата, время. Хранят числа, представляющие даты (с 1 января 100 года до 31 декабря 9999 года) и время суток с 0:00:00 до 23:59:59.

Для того, чтобы избежать неприятностей в случае ошибочной записи имени переменной, необходимо в общей области программного модуля вставить оператор:

Option Explicit (Эксплисит)(Опция «явно»)

Проиллюстрировать, зачем это делается можно на простом примере:

Dim n

n=n+1

MsgBox п

С виду никаких проблем. В окно сообщений должна, выводится единица. На самом деле выводится пустое окно сообщений. Причина – в третьей строке вместо n введена русская п. VBA просто создал новую переменную с типом Variant и вывел ее значение.

Уровни объявления переменных

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

Переменные могут быть:

      • локальными;

      • модульными;

      • глобальными.

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

В окне кодов перед списком всех объектов, располагается раздел General, в котором обычно объявляются используемые на форме переменные и их типы. Если объявление сделать в этом разделе, то значения этой переменной будут доступными во всех процедурах в пределах данной формы. Такие переменные называют модульными, т.е. действующими на уровне всего модуля проекта (таким модулем может является лист или форма).

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

Global m As Single, n As Single

Причем объявления глобальных переменных оператором Global, можно записывать только в программном коде модуля Module - специальном файле, который необходимо добавить в состав проекта.