Процедури Sub, Microsoft Docs

Оновлено: Листопад 2007

Процедура Sub – це послідовність операторів Visual Basic, укладених між операторами Sub та End Sub. Процедура Sub виконує завдання та повертає контроль коду виклику, але вона не повертає значення коду виклику.

При кожному виклику процедури її оператори виконуються, починаючи з першого оператора, що виконується після оператора Sub і закінчуючи першим з операторів End Sub, Exit Sub або Return.

Процедуру Sub можна визначати у модулях, класах та структурах. За замовчуванням вона є Public, що означає, що її можна викликати з будь-якого місця у додатку, який має доступ до модуля, класу чи структури, в якому вона визначена. Іншими словами, метод описує процедуру Sub або Function, доступ до якої здійснюється поза модулем, класом або структурою, в якій визначена ця процедура. Додаткові відомості див. у розділі Методи класу.

Процедура Sub може приймати аргументи, наприклад константи, змінні або вирази, які передаються їй кодом, що викликає.

[modifiers] Sub subname[(parameterlist)]

' Statements of the Sub procedure.

У modifiers можна вказати рівень доступу та відомості про перевантаження, перевизначення, загальний доступ та затінювання. Щоб отримати додаткові відомості, див. Оператор Sub (Visual Basic).

Оголошення параметра

Для кожного параметра у списку параметрів синтаксис виглядає так:

[Optional] [ByVal ByRef] [ParamArray] parametername As datatype

Optional [ByVal ByRef] parametername As datatype = defaultvalue

Параметри як локальні змінні

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

Синтаксис виклику

Процедура Sub викликається явним чином за допомогою окремого оператора, що викликає. Її не можна викликати, вказавши її ім'я у виразі. Необхідно задати значення всіх аргументів, які є обов'язковими, причому список аргументів має бути укладений у дужки. Якщо немає жодних аргументів, дужки можна опустити (необов'язково). Ви не можете використовувати ключове слово Call, але це не рекомендується.

Для виклику процедури Sub використовується наступний синтаксис:

Можна викликати метод Sub поза класом, у якому визначається. По-перше, необхідно використовувати ключове слово New, щоб створити екземпляр класу, або викликати метод, який повертає екземпляр класу. Для отримання додаткових відомостей див. Практичний посібник. Використання ключового слова New. Потім можна використовувати наступний синтаксис для виклику методу Sub для екземпляра об'єкта:

Наведена нижче процедура Sub показує оператору комп'ютера, яке завдання збирається виконати, а також відображає позначку часу. Замість дублювання цього коду на початку кожного завдання додаток викликає tellOperator з різних положень. При кожному виклику рядок передається аргументу task , що ідентифікує запущене завдання.

У наступному прикладі показано типовий виклик telloperator.