End Sub. Public –указывает, что процедура Sub доступна во всех других процедурах во всех модулях;
Public – указывает, что процедура Sub доступна во всех других процедурах во всех модулях; Private – указывает, что процедура Sub доступна для других процедур только того модуля, в котором она описана; Static – указывает, что локальные переменные процедуры Sub сохраняются в промежутках времени между вызовами этой процедуры; Sub, End Sub – служебные слова VBA; < имя процедуры> – имя процедуры, удовлетворяющее стандартным правилам именования; < список аргументов> – список переменных, представляющих аргументы, которые передаются в процедуру Sub при её вызове. Имена переменных разделяются запятой; < Инструкции> – любой набор команд VBA; Exit Sub – инструкция, выполнение которой приводит к выходу из процедуры. Синтаксис элемента < список аргументов>: [Optional] [ByVal | ByRef] [ParamArray] < Имя переменной> [As < Тип> ] [ = < По умолчанию> ] Optional – ключевое слово, указывающее, что аргумент не является обязательным. При использовании этого элемента все последующие аргументы, которые содержатся в списке аргументов, так же должны быть необязательными и описаны с помощью ключевого слова Optional. Все аргументы, описанные как Optional, должны иметь тип Variant. Не допускается использование ключевого слова Optional для любого из аргументов, если используется ключевое слово ParamArray; ByVal – ключевое слово, указывающее, что аргумент передается по значению; ByRef – ключевое слово, указывающее, что аргумент передается по ссылке. Описание ByRef используется в VBA по умолчанию; ParamArray – ключевое слово, которое может использоваться только в качестве последнего элемента в списке < список аргументов> для указания, что конечным элементом является описанный как Optional массив значений типа Variant. Ключевое слово ParamArray позволяет задавать произвольное количество аргументов, оно не может быть использовано со словами ByVal, ByRef или Optional; < Имя переменной> – имя переменной, удовлетворяющее стандартным правилам именования переменных; < Тип> – тип данных аргумента, переданного в процедуру; < По умолчанию> – любая константа или выражение, дающее константу. Используется только вместе с параметром Optional. Если указан тип Object, единственным значением по умолчанию может быть Nothing. В качестве результата процедура может возвращать в вызываю-щую программу множество простых или структурированных величин или не возвращать никаких значений. Среди параметров процедуры ука-зываются как аргументы, так и результаты. Обращение к процедуре- отдельный оператор. Вызов процедуры из другой процедуры можно произвести несколькими способами. Первый способ: < Имя процедуры> < Список фактических параметров> < Имя процедуры> – имя вызываемой процедуры; < Список фактических параметров> – список аргументов, передаваемых процедуре; он должен соответствовать списку, заданному в процедуре, по количеству и типу. Второй способ: Call < Имя процедуры> (< Список фактических параметров>) Call – служебное слово VBA; < Имя процедуры> – имя вызываемой процедуры; < Список фактических параметров> – список аргументов, передаваемых процедуре; он должен соответствовать списку, заданному в процедуре, по количеству и типу. Заметим, что при втором способе вызова процедуры в отличие от первого список фактических параметров должен быть заключен в круглые скобки; в качестве разделителя в списке используется запятая. VBA позволяет вводить фактические параметры через имена аргументов в любом порядке и опускать необязательные (Optional). При этом после имени аргумента ставится двоеточие и знак равенства, после которого помещается значение аргумента. Приведенный ниже пример показывает основные способы обращения к процедуре. Option Explicit Dim c As Double 'c - глобальная переменная Function F(ByVal x As Integer) As Integer F = x ^ 2
|