Пример передачи переменной по ссылке

Передача данных при вызове подпрограммы

End Sub

End Sub

End If

End Sub

End Sub

Примеры функций для работы с массивами

End Sub

Option Base 1

Использование массива

Пример использования массива типа Integer:

_________________________________________

Sub UsingArray()

Dim Vals(3) As Integer

Vals(1)= Int (100* Rnd())

Vals(2)= Int (100* Rnd())

Vals(3)= Int (100* Rnd())

MsgBox "Lottery numbers: " & Vals(1) & ", " & Vals(2) & "," & Vals(3)

Имеются ряд специальных функций для работы с массивами.

1. Функция Array – позволяет создавать массив в ходе выполнения программы, без предварительного описания.

Пример:

Sub CreateArray()

DataCA= Array ("Kate",43,#4/15/1962#)

MsgBox DataCA(0) & ",age" & DataCA(1) & ", born " & DataCA(2)

2. Функция Erase – используется для удаления данных, хранимых в элементах массива. Если массив фиксированного размера – очищается содержимое массива, а память, выделенная массиву, остается за ним.

Пример:

Option Base 1

_________________________________________

Sub EraseArray()

Dim EA(2) As Integer

EA(1) = Int (100 * Rnd ())

EA(2) = Int (100 * Rnd ())

MsgBox "Lottery numbers: " & EA(1) & "," & EA(2)

Erase EA

MsgBox "Lottery numbers: " & EA(1) & "," & EA(2)

3. Функция IsArray – позволяет проверить, является ли переменная массивом. Функция имеет один аргумент и возвращает True, если переменная является массивом, и False, если переменная не массив. Функция полезна, если необходимо проверить, возвращает ли вызываемая функция массив или обычную переменную.

Пример:

Sub IsArrayFunction()

Dim Arr(2) As Integer

Dim ArrayBool As Boolean

ArrayBool = IsArray (Arr)

If ArrayBool = True Then

MsgBox "Arr is an array."

4. Функции LBound и UBound – определяют верхнюю и нижнюю границы индексов элементов массива.

Пример:

Sub LBoundAndUBound()

Dim Data(4 To 15) As Integer

MsgBox "The lower bound is " & LBound (Data) & "."

MsgBox "The upper bound is " & UBound (Data) & "."

Перед вызовом функций LBound и UBound рекомендуется проверить переменную функцией IsArray.

Передача аргументов из одной программы в другую осуществляется двумя способами:

· по ссылке (by reference);

· по значению (by value).

Выбор способа передачи – с помощью ключевых слов ByRef и ByVal:

по ссылке– передается сама переменная (имя переменной), поэтому ее значение в подпрограмме можно изменить;

по значению– передается только значение переменной; изменить это значение в вызванной подпрограмме нельзя.

При отсутствии в описании ключевых слов передача осуществляется по ссылке.

Sub PassArgumentByReference()

Dim Username As String

Username = "Mike"

ChangeName Username

MsgBox Username


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: