Скачиваний:
0
Добавлен:
01.03.2025
Размер:
683.01 Кб
Скачать

Параметры

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

При вызове тем или иным способом указывается набор передаваемых в процедуру значений, который называется списком фактических параметров.

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

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

[Private | Public] [Static] Sub <Имя> ([СписокАргументов]) [Инструкции] [Exit Sub] [Инструкции] End Sub

Значения ключевых слов

  • Public — Указывает, что процедура Sub доступна для всех других процедур во всех модулях.

  • Private — Указывает, что процедура Sub доступна для других процедур только того модуля, в котором она описана. По умолчанию используется Private.

  • Static — Указывает, что локальные переменные процедуры сохраняются в промежутках времени между вызовами этой процедуры.

  • Имя процедуры Sub должно удовлетворять стандартным правилам именования в VBA.

  • СписокАргументов — Список переменных, представляющий аргументы, которые передаются в процедуру Sub при ее вызове. Имена переменных разделяются запятой.

  • Инструкции — Группа инструкций, выполняемых в процедуре.

  • Exit Sub — Инструкция, приводящая к немедленному выходу из процедуры Sub.

  • End Sub — конец процедуры.

Синтаксис элемента СписокАргументов:

[Optional] [ByVal | ByRef] [ParamArray] <имяПеременной>[()] [As <тип>] [= поУмолчанию]

Значения ключевых слов

  • Optional — Ключевое слово, указывающее, что аргумент не является обязательным. При использовании этого элемента все последующие аргументы, которые содержатся в списке СписокАргументов, также должны быть необязательными, и описаны с помощью ключевого слова Optional. Все аргументы, описанные как Optional, должны иметь тип Variant. Не допускается использование ключевого слова Optional для любого из аргументов, если используется ключевое слово ParamArray.

  • ByVal — Указывает, что этот аргумент передается по значению.

  • ByRef — Указывает, что этот аргумент передается по ссылке. Описание ByRef используется в VBA по умолчанию.

  • ParamArray — Используется только в качестве последнего элемента в списке СписокАргументов для указания, что конечным аргументом является Optional массив значений типа variant. Позволяет задавать произвольное количество аргументов. Не может быть использовано со словами ByVal, ByRef или Optional.

  • имяПеременной — Имя переменной, удовлетворяющее стандартным правилам именования переменных.

  • тип — Тип данных аргумента, переданного в процедуру; поддерживаются переменные типов Byte, Boolean, Integer, Long, Currency, Single, Double, Date, String (только строки переменной длины), Object, Variant. Если отсутствует ключевое слово Optional, могут быть также указаны определяемый пользователем тип или объектный тип.

  • поУмолчанию — Любая константа или выражение, дающее константу. Используется только вместе с параметром Optional. Если указан тип Object, единственным значением по умолчанию может быть значение Nothing.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]