Основы VBA. Часть 9

Работа с модулями и классами

В предыдущих лекциях были рассмотрены два важнейших «строительных блока» Visual Basic — формы и элементы. Третий вид блоков — программные модули, представляющие собой текстовые ASCII-файлы, содержащие подпрограммы, функции, переменные и константы. В модули удобно группировать взаимосвязанные процедуры, которые могут использоваться в программе.
В Visual Basic предусмотрена возможность работы с модулями класса, в которых программа описывается в виде совокупности объектов. Класс не только позволяет выделить часть функциональных средств программы в отдельный объект, но и рас- ширяет возможности базовых модулей — вы можете защитить одни фрагменты программы, а другие — предоставить в распоряжение программы. Классы обладают свойствами, методами и событиями, предназначенными для выполнения взаимо- связанных операций. Хорошо спроектированный класс представляет собой вполне самостоятельный фрагмент программы, который можно перенести в другой проект и он будет нормально работать без каких-либо исправлений. Поскольку модули содержатся в отдельных файлах, их можно включать сразу в несколько проектов.Группируя однородные функции в пределах одного модуля, вы создаете программную библиотеку. Использование программных библиотек экономит время, поскольку вам не придется заново создавать уже написанный код.

Создание и обновление программной библиотеки

Если написанный вами программный модуль достаточно универсален и содержит средства, которые могут использоваться в других приложениях, сохраните его в каталоге, например, Codelib. Когда вы захотите включить модуль в другой проект, выберите в окне проекта Visual Basic в меню Вставка пункт Файл и в диалоговом окне Вставка файла выберите нужный модуль из каталога Codelib.
Чтобы включить в программный модуль новую процедуру, необходимо в меню Вставка проекта Visual Basic выбрать команду Процедура.

Передача параметров в процедуры

Чтобы процедура работала с различными исходными данными, ей можно передавать параметры. Параметры, передаваемые функциям, должны заключаться в скобки. Параметры процедур в скобки не заключаются. Если передается несколько параметров, их следует разделять запятыми.
Процедура Function (или функция) представляет собой последовательность инструкций языка Visual Basic, ограниченных инструкциями Function и End Function.Процедура Function подобна процедуре Sub, однако в отличие от последней она возвращает значения. Процедура Function может получать аргументы, как например константы, переменные, или выражения, передаваемые ей вызывающей процедурой. Если процедура Function не имеет аргументов, ее инструкция Function должна содержать пустые скобки. Возврат значения осуществляется путем его присвоения имени функции в одной или нескольких инструкциях процедуры.
В следующем примере функция Celsius пересчитывает градусы Фаренгейта в градусы Цельсия. Когда функция вызывается процедурой Main, переменная, содержащая значение аргумента, передается функции. Результат вычислений возвращается вызывающей процедуре и выводится в окно сообщения.
Sub Main()
temp = Application.InputBox(Prompt:= _
«Введите температуру в градусах Фаренгейта.», Type:=1)
MsgBox «Температура равна » & Celsius(temp) & " градусов Цельсия."
End Sub
Function Celsius(fDegrees)
Celsius = (fDegrees — 32) * 5 / 9
End Function

Похожие записи

    No related posts found
Запись опубликована в рубрике Книги, Лекции с метками , , , , , , . Добавьте в закладки постоянную ссылку.
Скачать этот текст в формате:

Добавить комментарий