Процедури обробки подій є локальними процедурами, пов’язаними з певною формою. Для того, щоб зробити певні процедури загальнодоступними, їх потрібно оголосити в одному чи декількох стандартних модулях. Стандартний модуль, або модуль програми, являє собою особливий файл з розширенням bas, який зберігає змінні і процедури, які можуть бути використані у будь-якому місці програми. Стандартний модуль входить до складу проекту, він, як і форми, може бути збережений у зовнішній пам’яті: меню File, команда Save Module1 , вказати місце збереження і ім’я модуля. Стандартних модулів, як і форм, у проекті може бути декілька. На відміну від форм, стандартний модуль не містить об’єктів і встановлюваних властивостей об’єктів, а тільки текст програми, який може бути відображеним і відредагованим у вікні редактору коду. В процедурах обробки подій користувач може використовувати власноруч розроблені процедури, оголошені у стандартному модулі даного проекту. Існують такі різновиди процедур стандартного модуля: процедура типу Function (функції) і процедура типу Sub (підпрограми).
Функції створюються тоді, коли деякі обчислення потрібно виконувати кілька разів у програмі з різними значеннями параметрів. Для створення власної процедури типу Function необхідно використати такі оператори:
Function <ім'я функції> ([аргументи функції]) [As <тип>]
Конструкції тіла функції
End Function
де:
• ім'я функції — значення, яке повертається у процедуру виклику після виконання процедури;
• аргументи функції —імена змінних, значення яких використовуються функцією (якщо аргументи потрібні);
• тип — це тип значень, які повертає функція, якщо цей опис відсутній, то за замовчуванням тип Variant.
Зауваження. Квадратні дужки у синтаксичній формулі вказують на необов’язковість наявності параметра.
Останній оператор у тілі функції зазвичай - оператор присвоєння імені функції обчисленого значення.
Приклад
Function TotalTax(Cost)
StateTax=Cost*0.05 ‘Податки штату 5%
CityTax= Cost*0.015 ‘Міські податки 1,5 %
TotalTax= StateTax + CityTax
End Function
Для активізації процедури типу Function треба ввести в програму ім'я процедури з тією кількістю аргументів, які використовувалися при її оголошенні. Зазвичай процедури типу Function (функція) розробляють з метою виконання певних обчислень. Використовуються за тими ж правилами як і стандартні функції: значення функції зазвичай присвоюється змінній чи властивості об’єкта.Функції, оголошені у стандартних модулях, за замовчуванням є загальнодоступними.
Процедура типу Sub, на відміну від процедури типу Function, після її виконання повертає значення в аргументах процедури або виконує певні дії (наприклад, друкування даних). Для створення такої процедури використовують оператори:
Sub <ім'я > ([аргументи]) [As <тип>]
Конструкції тіла процедури