|
||||||||
|
Передача аргументов в процедуруЕсли процедуре необходимы дополнительные данные и их нельзя получить из контекста, в котором она выполняется, то эти данные следует передать ей как аргументы. Чтобы указать, что процедура принимает аргументы, перечислите их между скобками за именем процедуры в ее объявлении. Аргументы отделяются запятыми. Объявляя аргумент, можно задать его тип данных с помощью ключевого слова Взгляните, как объявлена процедура Sub, принимающая 3 аргумента: Sub UpdateRecord(ByVal custId As Long. ByRef custName As String, _ Первый аргумент, custId, обязателен и передается по значению как тип Long. Если аргумент передается в процедуру по значению, процедура получает j лишь копию переменной, переданной вызывающей процедурой. Если вызываемая процедура модифицирует это значение, то изменится только копия, а не сама переменная в вызывающей процедуре.Второй аргумент, сustName, тоже обязателен, но передается по ссылке как тип String. В этом случае процедура имеет доступ к исходной переменной в памяти, и поэтому способна изменить ее значение.Третий аргумент, custRepeat, не обязателен и передается по ссылке как тип Boolean. (По умолчанию аргументы всегда передаются по ссылке.)Вот пример вызова процедуры UpdateRecord: Dim newld As Long Имя переменной, передаваемой в процедуру, необязательно должно совпадать с именем аргумента в объявлении этой процедуры.
Текст пособия подготовлен на основе материалов книги Microsoft Corporation. Руководство программиста по Visual Basic для Microsoft Office 97 / Пер. с англ. - М.: Издательский отдел "Русская Редакция" ТОО "Channel Trading Ltd.", 1997. - 544 с.: илл. c Оригинальное издание на английском языке, Microsoft Corporation, 1997 c Русский перевод, Microsoft Corporation, 1997 |