# Call

Оператор управления call вызывает подпрограмму, которую необходимо задать с помощью предыдущего оператора sub.

Синтаксис:

Call name ( [ paramlist ])

Аргументы:

Аргументы

| Аргумент | Описание |
| --- | --- |
| name | Имя подпрограммы. |
| paramlist | Список фактических параметров, отправляемых в подпрограмму и перечисленных через запятую. Элементы списка могут быть именами полей, переменными или произвольными выражениями. |

Подпрограмма, вызываемая оператором call, должна быть задана оператором sub ранее при выполнении скрипта.

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

Ограничения:

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

* Когда определяется подпрограмма с использованием `Sub..end sub` внутри оператора управления, например `if..then`, подпрограмму можно вызвать только в пределах этого оператора управления.