Visual Basic. Теория. Нагина Е.К - 47 стр.

UptoLike

Составители: 

47
4. Между операторами Sub и End Sub разместить выполняемый при
наступлении этого события программный код.
8.7.2. Процедуры Function
Процедуры Function в отличие от процедур Sub могут возвращать
значение в вызывающую процедуру. Синтаксис процедуры Function вы -
глядит следующим образом:
[Private] [Public] [Static] Function имяПроцедуры (аргументы) [As type]
операторы
End Function
Процедуры Function, как и переменные, имеют тип , задаваемый с
помощью ключевого слова As. Если тип процедуры не задан, по умолча-
нию ей присваивается тип Variant. Тип процедуры определяет в свою оче-
редь тип возвращаемого ею значения. Возвращаемое процедурой значение
присваивается имени процедуры имяПроцедуры и может быть использова-
но в выражениях программного кода аналогично стандартным функциям
Visual Basic.
8.7.3. Вызов процедур
Процедура Sub не возвращает значения , однако она может изменять
значения переменных, заданных для нее в качестве параметров. Вызов
процедуры можно осуществлять двумя способами:
Call NameProc (аргумент 1,аргумент 2,. . . аргумент N)
NameProc аргумент 1, аргумент 2 . . . аргумент N
При вызове процедуры модуля формы из другого модуля необходи-
мо указывать ссылку на имя модуля формы , содержащего процедуру. На-
пример, для вызова процедуры с именем NameProc, находящегося в моду-
ле формы Form1, оператор должен выглядеть так :
Call Form1.NameProc (аргумент 1, аргумент 2, . . . аргумент N)
Вызов процедуры Function аналогичен вызову встроенных функций
Visual Basic. Кроме этого , процедуру Function можно вызывать так же, как
процедуру Sub.
9. Управляющие структуры
В VBA предусмотрено несколько способов изменения порядка вы -
полнения программ. Управляющие структуры VBA функционально экви-
валентны подобным структурам в языке программирования Бейсик, за ис-
ключением For-Each-Next. Ниже перечислены основные управляющие
структуры VBA.
If-Then-Else Выполняет группу операторов, если соблюдено не-
которое условие
                                        47
      4. М еж дуо перато рами Sub и End Sub разместить вы по лняемы й при
         наступленииэто г о со бы тия про грамм ны й ко д.

8.7.2. П роцеду ры Function
       П ро ц едуры Function в о тличие о тпро ц едур Sub мо гутво звращ ать
значение в вы зы ваю щ ую про ц едуру. Синтаксис про ц едуры Function вы -
глядитследую щ им о бразо м:
  [Private] [Public] [Static] Function им яП ро цедуры (аргум ент ы ) [As type]
     о перат о ры
 End Function
       П ро ц едуры Function, как и переменны е, имею ттип, задаваемы й с
по мо щ ью клю чево го сло ва As. Е сли тип про ц едуры не задан, по умо лча-
нию ей присваивается тип Variant. Т ип про ц едуры о пределяетвсво ю о че-
редь тип во звращ аемо г о ею значения. В о звращ аемо е про ц едуро й значение
присваивается имени про ц едуры им яП ро цедуры и мо ж етбы ть испо льзо ва-
но в вы раж ениях про г  рамм но го ко да анало гично стандартны м функц иям
Visual Basic.

8.7.3. Вы зов процеду р
       П ро ц едура Sub не во звращ аетзначения, о днако о на мо ж етизменять
значения переменны х, заданны х для нее в качестве параметро в. В ы зо в
про ц едуры мо ж но о сущ ествлять двумя спо со бами:
       • Call NameProc (аргум ент 1,аргум ент 2,. . . аргум ент N)
       • NameProc аргум ент 1, аргум ент 2 . . . аргум ент N
       П ри вы зо ве про ц едуры мо дуля фо рмы из друг    ого мо дуля нео бхо ди-
мо указы вать ссы лкуна имя мо дуля фо рмы , со держ ащ ег      о про ц едуру. Н а-
пример, для вы зо ва про ц едуры с именем NameProc, нахо дящ ег       о ся в мо ду-
лефо рмы Form1, о перато р до лж ен вы г    лядеть так:
       Call Form1.NameProc (аргумент 1, аргум ент 2, . . . аргум ент N)
       В ы зо в про ц едуры Function анало г  ичен вы зо вувстро енны х функц ий
Visual Basic. К ро ме это г о , про ц едуруFunction мо ж но вы зы вать так ж е, как
про ц едуруSub.

                     9. У правл яю щ иестру кту ры
      В VBA предусмо трено неско лько спо со бо в изменения по рядка вы -
по лнения про грамм. У правляю щ ие структуры VBA функц ио нально экви-
валентны по до бны м структурам в язы ке про граммиро вания Бей сик, за ис-
клю чением For-Each-Next. Н иж е перечислены о сно вны е управляю щ ие
структуры VBA.

      If-Then-Else       В ы по лняетг руппуо перато ро в, если со блю дено не-
                         ко то ро еусло вие