double arrow

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

End Function

End Sub

End Sub

Область видимости процедур и функций

End Sub

Оператор Sub - объявление процедуры, задается имя, указывается состав аргументов, передаваемых при вызове процедуры из программы. Каждому оператору Subобязательно соответствует End Sub.


Функция − отличается от процедуры следующим:

· начинается ключевым словом Function и заканчивается ключевыми словами End Function;

· функцию можно вызвать из формулы, введенной в ячейку;

· функция может возвращать значение в вызывающую программу или формулу.

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

<Имя>(<Фактические аргументы>)

При вызове процедуры фактические аргументы подставляются на место формальных и управление выполнением передается процедуре. Аргументы могут быть входными, выходными или модифицируемыми. Через входные аргументы процедура получает данные при обращении к ней. Выходные аргументы возвращают результаты выполнения процедуры. Модифицируемые аргументы являются одновременно входными и выходными.

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

У процедур и функций два уровня видимости:

· уровень модуля;

· уровень проекта.

Служебные слова Privateи Public задают область видимости процедур и функций. Private делает объект доступным только внутри данного модуля. Public делает объект доступным из другого модуля. Для того чтобы перевести процедуру или функцию на уровень модуля, необходимо объявить ее с ключевым словом Private. Такие программы не могут запускаться сами по себе. Их можно только вызвать из других программ. Рассмотрим пример.


Sub Proc()

var1=GetRand

ModuleLevelProcedure var1

Private Sub ModuleLevelProcedure(ByVal var1)

MsgBox var1*GetRand

Private Function GetRand()

GetRand=Int(100*Rnd())

Сначала процедура Proc()вызывает функцию GetRand для генерации случайного целого числа в диапазоне от 0 до 99, а затем передает его в процедуру ModuleLevelProcedure. Там этот аргумент умножается на результат еще одного обращения к функцииGetRand. Их произведение выводится в информационном окне.

Переменная − поименованная область в памяти компьютера во время выполнения программы. Переменная предназначена для хранения и изменения значений во время выполнения программы. Переменная требует явного объявления своего имени. Имя образуется из алфавитно-цифровых символов и знака подчеркивания _.Имя всегда начинается с буквы и представляет собой непрерывную последовательность символов, но не более 254; пробелы в имени не допускаются.

Итак, в языке Visual Basic действуют следующие соглашения на имена процедур, переменных и констант:

· должны начинаться с буквы;

· могут включать буквы, цифры и символы подчеркивания;

· не должны включать знаки препинания или пробелы;

· не должны совпадать с ключевыми словами языка Visual Basic.


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