Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Вызов процедур и функций




Понятие функции

Функция аналогична процедуре, но отличается тем, что возвращает в точку вызова основной программы единственный результат. Например,

 

Y = ABS(X)

 

- определяет модуль числа X и возвращает результат, который присваивается переменой Y.

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

Синтаксис:

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

[Инструкции]

[Имя = Выражение]

[Exit Function]

[Инструкции]

[Имя = Выражение]

End Function

 

Синтаксис инструкции Function содержит те же элементы, что и Sub. Инструкция Exit Function приводит к немедленному выходу из функции. Подобно процедуре Sub, процедура Function является самостоятельной процедурой, которая может получать аргументы, выполнять последовательность инструкций и изменять значения своих аргументов. Однако в отличие от процедуры Sub, когда требуется использовать возвращаемое функцией значение, процедура Function может применяться в правой части выражения, как и любая другая встроенная функция, например, cos. Для возврата значения из функции следует присвоить значение имени функции. Любое число таких инструкций присвоения может находиться в любом месте процедуры.

VBA можно использовать для создания собственных функций. Например, можно определить функцию Процент (число), которая будет определять процент от числа.

 

Public Function Процент (число)

Процент = число*0.01/100

End Function

 

Функция может иметь аргумент Число. Аргумент Число может быть числом или ссылкой на ячейку рабочего листа. Величина процента является тем значением, которое возвращает функция.

 

6.1.4. Правила для имён процедур и функций

В VBA существуют определённые правила для имён процедур и функций:

§ первые три символа имени должны быть буквами;

§ имя может содержать буквы, цифры и знаки подчёркивания;

§ имя не может содержать пробелы, точки, запятые, восклицательные знаки и символы @, &, $, #;

§ имя не должно иметь более 255 символов.

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

 

Вызов процедур и функций из другой процедуры (функции) осуществляется посредством указания имени процедуры (функции) и списка параметров:

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

Call ИмяПроцедуры(СписокФактическихПараметров)

ИмяФункции(СписокФактическихПараметров)

 

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

 

При этом для функции список параметров должен быть указан в скобках, а для процедур возможно два вариант:

– с применением ключевого слова Call, в этом случае список параметров заключается в скобки;

– без применения ключевого слова Call и без скобок.

 




Поделиться с друзьями:


Дата добавления: 2014-11-20; Просмотров: 460; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.