Поделиться через


Практическое руководство. Создание процедуры (Visual Basic)

Вы заключаете процедуру между инструкцией начального объявления (Sub или Function) и конечной инструкцией объявления (End Sub или End Function). Весь код процедуры лежит между этими инструкциями.

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

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

Создать процедуру, которая не возвращает значение

  1. За пределами любой другой процедуры используйте Sub оператор, за которым следует End Sub оператор.

  2. В инструкции Sub после ключевого слова Sub укажите имя процедуры, а затем в скобках укажите список параметров.

  3. Поместите инструкции кода процедуры между инструкциями Sub и End Sub.

Создание процедуры, возвращающей значение

  1. За пределами любой другой процедуры используйте Function оператор, за которым следует End Function оператор.

  2. Function В инструкции после ключевого слова Function укажите имя процедуры, затем список параметров в скобках, затем – предложение As, указывающее тип данных возвращаемого значения.

  3. Поместите инструкции кода процедуры между инструкциями Function и End Function.

  4. Используйте инструкцию Return , чтобы вернуть значение в вызывающий код.

Чтобы подключить новую процедуру к старым повторяющимся блокам кода

  1. Убедитесь, что вы определите новую процедуру в месте, где старый код имеет к нему доступ.

  2. В старом блоке повторяющегося кода замените инструкции, выполняющие повторяющуюся задачу, на один оператор, который вызывает Sub или Function процедуру.

  3. Если ваша процедура Function возвращает значение, убедитесь, что вызывающее выражение выполняет действие с возвращаемым значением, например, сохраняет его в переменной, иначе значение будет потеряно.

Пример

Function Следующая процедура вычисляет самую длинную сторону или гипотенузу правого треугольника, учитывая значения для других двух сторон:

Function Hypotenuse(side1 As Double, side2 As Double) As Double
    Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function

См. также