Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Подпрограмма-функция



VBA содержит встроенные или стандартные функции, например, sqr, cos или chr. Кроме того, с помощью оператора Function можно писать собственные процедуры Function. Эти функции называют нестандартные или пользовательскими.

Синтаксис процедуры Function таков:

[Private|Public][Static]Function <имя процедуры> (<аргументы>) [As type <имя типа>] <операторы> End Function

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

Funcstion toint(b As String) As IntegerDim i As Integer, l As Integer, k As Integer, j As Integerl = Len(b): i = 0For k = l To 1 Step -1j = CInt(Mid(b, k, 1))i = i + j * 2 ^ (l - k)Nexttoint = iEnd Function

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

- Возвращаемое процедурой Function значение присваивается самому имени <имя процедуры> процедуры. Возвращаемое процедурой Function значение можно использовать в выражениях в программе.

- Как и переменные процедуры Function имеют тип, который определяет тип возвращаемого значения. (В отсутствие ключевого слова As в операторе определения процедуры ей назначается по умолчанию тип variant.)

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

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

Function Hypotenuse (A As Integer, В As Integer) As String

Hypotenuse = Sqr(A^2 + В^2)

End Function

В VBA процедура Function вызывается точно так же, как и любая встроенная функция:

strX = Hypotenuse(Width, Height)





Дата публикования: 2014-11-28; Прочитано: 220 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...