Подпрограммы

При написании длинных программ рационально использовать подпрограммы.

Подпрограмма – это отдельный блок, который может восприниматься как отдельная программа. В VBA существует два вида подпрограмм: подпрограмма-процедура и подпрограмма-функция.

Подпрограмма-процедура

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

Синтаксис:

[ Public | Private ] [ Static ] Sub Имя([Список аргументов])

Тело подпрограммы

End Sub

Элементы описания процедуры рассмотрены в табл. 10.

Таблица 10

Public Указывает, что процедура Sub доступна для всех других процедур во всех модулях
Private Указывает, что процедура Sub доступна для других процедур только того модуля, в котором она описана
Static Указывает, что локальные переменные процедуры Sub сохраняются в промежутках времени между вызовами этой процедуры
Список аргументов Список переменных, которые передаются в процедуру Sub при ее вызове. Имена переменных разделяются запятой

Вызов процедуры Sub из другой процедуры можно произвести следующим образом:

Имя процедуры [Список фактических параметров]

Список фактических параметров – это список аргументов, передаваемых процедуре. Он должен соответствовать списку, заданному в описании процедуры, по типу и количеству.

Пример

Основные способы передачи параметров в процедуре.

Option Explicit

Sub PR27()

Dim c As Double

Dim a As Integer

Dim b As Integer

B = 12

For a = 1 To 5

Summa a, b, c

MsgBox("c=" & c)

Next a

End Sub

Sub Summa(ByVal a1, b1 As Integer, ByRef s As Double)

S = a1 + b1

End Sub

В данной программе мы сталкиваемся с несколькими видами параметров:

· глобальные параметры – c, a, b;

· локальные параметры – s, a1, b1;

· параметры, передающиеся по значению – a, b;

· параметры, передающиеся по ссылке – s;

· фактические параметры – a, b, c;

· формальные параметры – a1, b1, s.

Рассмотрим каждый из этих видов параметров.

Локальные и глобальные параметры (переменные)

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



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