Создание процедур обработки событий.

Начинающим разработчикам приложений ACCESS понадобится набор процедур для отклика на различные события, например, внесение изменений в поле или щелчок на кнопке. Код процедуры обработки события привязывается к событию, которое может произойти при работе с формой, отчетом или элементом управления. Результат выполнения процедуры-функции обычно применяется:

· в качестве значения по умолчанию для поля таблицы;

· в качестве значения критерия для запросов или фильтров;

· в качестве содержимого поля.

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

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

2. Выбрать команду Вид -> Свойства, чтобы открыть окно свойств формы, отчета или элемента управления.

3. Открыть вкладку События.

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

5. Выполнить щелчок по кнопке с тремя точками, чтобы открыть диалоговое окно Построитель.

6. В этом окне выполнить двойной щелчок мышью на строке Программы. Откроется окно редактора Visual Basic, в котором автоматически появится начальная и конечная строки процедуры.

7. Ввести операторы, образующие код процедуры.

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

Посредством отступов выделяют вложенные циклы и условные операторы внутри процедуры.

Тексты программ принято снабжать комментариями. В начале каждой строки комментария ставится апостроф, и такие строки не влияют на выполнение программы, а при синтаксическом анализе и компилировании - пропускаются. Наряду с отступами ACCESS 97 позволяет использовать различные шрифты и цвета для выделения фрагментов текста модуля. Эти параметры устанавливаются на вкладке Модуль диалогового окна Параметры.

Редактирование в окне модуля

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

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

Для быстрого поиска и замены фрагментов кода применяются команды Найти и Заменить из меню Правка.

В ACCESS при редактировании фрагментов кодов кроме общепринятых используются дополнительные комбинации клавиш: Ctrl + Y позволяет вставить в буфер строку, в которой находится курсор, не выполняя его маркировку; F3 и Shift + F3 позволяют просмотреть все фрагменты модуля, в которых встречается искомая последовательность символов. F3 дублирует команду Найти далее из меню Правка и кнопку Найти далее окна поиска.

Аргументы процедуры.

Благодаря аргументам пользователь имеет возможность управлять выполнением процедуры. При описании процедуры, зависящей от аргументов, имя аргумента принято вводить в скобках за именем процедуры в строке с ключевым словом Function/Sub. Например:

Function Рубли_в_Доллары (Коэффициент)

При вызове такой функции значение аргумента указывается в скобках после имени функции Например:

=Рубли_в_Доллары (4500)

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

Основные операторы VBA.

Наши рекомендации